* main.c (initialize_realms): For "cannot initialize realm" messages, tell the
authorKen Raeburn <raeburn@mit.edu>
Wed, 23 Aug 2000 22:57:08 +0000 (22:57 +0000)
committerKen Raeburn <raeburn@mit.edu>
Wed, 23 Aug 2000 22:57:08 +0000 (22:57 +0000)
user to check the log file.  Print out an error message as well as logging it
if retrieving the default realm name fails.

* kerberos_v4.c (kerberos_v4): Mask requested-life byte value with 0xff to
avoid sign-extension problems.

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

src/kdc/ChangeLog
src/kdc/kerberos_v4.c
src/kdc/main.c

index e5243f7b0433ecceedd40fe156f0acda0831f676..c1d66bf664ddb55fc08b0cfc90df5385ec301de0 100644 (file)
@@ -1,3 +1,13 @@
+2000-08-23  Ken Raeburn  <raeburn@mit.edu>
+
+       * main.c (initialize_realms): For "cannot initialize realm"
+       messages, tell the user to check the log file.  Print out an error
+       message as well as logging it if retrieving the default realm name
+       fails.
+
+       * kerberos_v4.c (kerberos_v4): Mask requested-life byte value with
+       0xff to avoid sign-extension problems.
+
 2000-07-03  Ezra Peisach  <epeisach@mit.edu>
 
        * Makefile.in (rtest): Link in the kdb5 library.
index 6629c3e35f5e52e93f8d3e33b49887f7eac7aa8f..2c9d9d0232189d41f21c31af729ff29ac92a6836 100644 (file)
@@ -689,7 +689,7 @@ kerberos_v4(client, pkt)
            }
            ptr = (char *) pkt_time_ws(pkt) + 4;
 
-           req_life = (u_long) (*ptr++);
+           req_life = (u_long) (*ptr++) & 0xff;
 
            service = ptr;
            str_length_check(service, SNAME_SZ);
index 473b902d0123d5c07d5f7446c3e37ddcff94f9f1..c26782f0c2cc6267612330289995af768b735683 100644 (file)
@@ -615,7 +615,7 @@ initialize_realms(kcontext, argc, argv)
                    if ((retval = init_realm(argv[0], rdatap, optarg, db_name,
                                             mkey_name, menctype,
                                             default_ports, manual))) {
-                       fprintf(stderr,"%s: cannot initialize realm %s\n",
+                       fprintf(stderr,"%s: cannot initialize realm %s - see log file for details\n",
                                argv[0], optarg);
                        exit(1);
                    }
@@ -692,13 +692,15 @@ initialize_realms(kcontext, argc, argv)
        if ((retval = krb5_get_default_realm(kcontext, &lrealm))) {
            com_err(argv[0], retval,
                    "while attempting to retrieve default realm");
+           fprintf (stderr, "%s: %s, attempting to retrieve default realm\n",
+                    argv[0], error_message (retval));
            exit(1);
        }
        if ((rdatap = (kdc_realm_t *) malloc(sizeof(kdc_realm_t)))) {
            if ((retval = init_realm(argv[0], rdatap, lrealm, db_name,
                                     mkey_name, menctype, default_ports,
                                     manual))) {
-               fprintf(stderr,"%s: cannot initialize realm %s\n",
+               fprintf(stderr,"%s: cannot initialize realm %s - see log file for details\n",
                        argv[0], lrealm);
                exit(1);
            }
@@ -794,6 +796,9 @@ int main(argc, argv)
            exit(1);
     }
     krb5_klog_init(kcontext, "kdc", argv[0], 1);
+    /* N.B.: After this point, com_err sends output to the KDC log
+       file, and not to stderr.  */
+
     initialize_kdc5_error_table();
 
     /*