* tf_util.c (tf_get_cred): Issue date is written out as a long,
authorEzra Peisach <epeisach@mit.edu>
Tue, 19 Mar 1996 16:27:56 +0000 (16:27 +0000)
committerEzra Peisach <epeisach@mit.edu>
Tue, 19 Mar 1996 16:27:56 +0000 (16:27 +0000)
read back in as same.

I have kept the size as a long to be compatible with the Cygnus V4
distribution. The problem was introduced when we changed the include/kerberosIV
structures to use 32 bit ints for timestamps. So, under OSF/1, tf_util would
write out a 64 bit issue date, and then try reading back in a 32 bit one. Since
Cygnus uses sizeof(long) we will too.

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

src/lib/krb4/ChangeLog
src/lib/krb4/tf_util.c

index 37a4c9b2f77a77294397e277bf56b8348f1f6596..ee8fa0d8d506b3a7d50fa6150bf19cf7e7777e6e 100644 (file)
@@ -1,3 +1,8 @@
+Tue Mar 19 11:23:13 1996  Ezra Peisach  <epeisach@kangaroo.mit.edu>
+
+       * tf_util.c (tf_get_cred): Issue date is written out as a long,
+               read back in as same.
+
 Sat Feb 24 09:27:08 1996  Ezra Peisach  <epeisach@kangaroo.mit.edu>
 
        * g_svc_in_tkt.c, put_svc_key.c, rd_req.c, rd_svc_key.c: Declare
index 7761b3d583398079b05a1b1fbc4580520f5628f5..03a092fa69a5451dfb584af3038ca3a101b65faf 100644 (file)
@@ -374,6 +374,7 @@ int tf_get_cred(c)
 {
     KTEXT   ticket = &c->ticket_st;    /* pointer to ticket */
     int     k_errno;
+    long issue_date;
 
     if (fd < 0) {
        if (krb_debug)
@@ -414,11 +415,12 @@ int tf_get_cred(c)
     /* don't try to read a silly amount into ticket->dat */
        ticket->length > MAX_KTXT_LEN ||
        tf_read((char *) (ticket->dat), ticket->length) < 1 ||
-       tf_read((char *) &(c->issue_date), sizeof(c->issue_date)) < 1
+       tf_read((char *) &(issue_date), sizeof(issue_date)) < 1
        ) {
        tf_close();
        return TKT_FIL_FMT;
     }
+    c->issue_date = issue_date;
 #ifdef TKT_SHMEM
     memcpy(c->session, tmp_shm_addr, KEY_SZ);
     tmp_shm_addr += KEY_SZ;