t_ser.c (main): POSIX states that getopt returns -1 when it is done
authorTheodore Tso <tytso@mit.edu>
Wed, 6 May 1998 20:21:28 +0000 (20:21 +0000)
committerTheodore Tso <tytso@mit.edu>
Wed, 6 May 1998 20:21:28 +0000 (20:21 +0000)
parsing options, not EOF.

get_in_tkt.c (krb5_get_init_creds): If libdefaults/{REALM}/noaddresses
is true, then don't put any addresses in the ticket request.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@10549 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/krb/ChangeLog
src/lib/krb5/krb/get_in_tkt.c
src/lib/krb5/krb/t_ser.c

index 3d0784c84642ad69ae5a41df32bd41e3ed161c57..434459f9ac33dc6708f46b3aa453fccfed0d1818 100644 (file)
@@ -1,3 +1,14 @@
+1998-05-06  Theodore Ts'o  <tytso@rsts-11.mit.edu>
+
+       * t_ser.c (main): POSIX states that getopt returns -1
+               when it is done parsing options, not EOF.
+
+1998-05-05  Theodore Ts'o  <tytso@rsts-11.mit.edu>
+
+       * get_in_tkt.c (krb5_get_init_creds): If
+               libdefaults/{REALM}/noaddresses is true, then don't put
+               any addresses in the ticket request.
+
 Mon May  4 15:54:07 1998  Tom Yu  <tlyu@mit.edu>
 
        * get_in_tkt.c: Add prototype for make_preauth_list.
index c593e12cc51183db8a7f38374fa59b81a1350433..679ecc492d984c49668979c955778490054b362e 100644 (file)
@@ -620,7 +620,7 @@ krb5_appdefault_string(context, realm, option, ret_value)
     /*
      * Try number one:
      *
-     * [appdefaults]
+     * [libdefaults]
      *         REALM = {
      *                 option = <boolean>
      *         }
@@ -636,7 +636,7 @@ krb5_appdefault_string(context, realm, option, ret_value)
     /*
      * Try number two:
      *
-     * [appdefaults]
+     * [libdefaults]
      *         option = <boolean>
      */
     
@@ -855,11 +855,19 @@ krb5_get_init_creds(context, creds, client, prompter, prompter_data,
        goto cleanup;
     }
 
-    if (options && (options->flags & KRB5_GET_INIT_CREDS_OPT_ADDRESS_LIST))
+    if (options && (options->flags & KRB5_GET_INIT_CREDS_OPT_ADDRESS_LIST)) {
        request.addresses = options->address_list;
-    else
+    }
+    /* it would be nice if this parsed out an address list, but
+       that would be work. */
+    else if (((ret = krb5_appdefault_boolean(context, &client->realm,
+                                           "noaddresses", &tempint)) == 0)
+            && tempint) {
+           ;
+    } else {
        if ((ret = krb5_os_localaddr(context, &request.addresses)))
            goto cleanup;
+    }
 
     request.authorization_data.ciphertext.length = 0;
     request.authorization_data.ciphertext.data = 0;
index 9248f6d67e8d965bc826f48d79a962b1951a7a8a..4ca3b5399ad3d9a1b26723d113662ecac39ac9f1 100644 (file)
@@ -641,7 +641,7 @@ main(argc, argv)
     do_ptest = 1;
     do_rtest = 1;
     do_stest = 1;
-    while ((option = getopt(argc, argv, "acekprsxvACEKPRSX")) != EOF) {
+    while ((option = getopt(argc, argv, "acekprsxvACEKPRSX")) != -1) {
        switch (option) {
        case 'a':
            do_atest = 0;