Content-Type: text/plain; charset=us-ascii Content-Description: message body text Content-Transfer-Encoding: 7bit X-RT-Original-Encoding: us-ascii Content-Length: 955 krb524d uses krb524int_krb_create_ticket(), which when it populates the K4 ticket starttime in the tkt->dat, is using memcpy to copy 4 from an 8 byte long (8 bytes on 64bit platforms). The result is a starttime of zero, rather than the actual start time which is held in the lower order bytes (assuming big endian). marshalling the 64bit starttime is implemented in krb_create_ticket (src/lib/krb4/cr_tkt.c), but appears to have been overlooked in krb524int_krb_create_ticket (src/krb524/cnv_tkt_skey.c). Attached is a patch to 1.3.1 for your review. I've tested this on: * 64bit solaris 8 (big endian) * 32bit solaris 8 (big endian) * 32bit red hat linux AS 2.1 (little endian) However the krb_create_ticket code assumes big endian, so this patch is an adaptation of the changes made to krb_create_ticket. I'm not aware of any predefined macros that can be used to determine endianness, but the intent of this patch should be clear. Regards, Cesar