From bec9133f41994f299d236ea89e575be2c1b839d5 Mon Sep 17 00:00:00 2001 From: Tom Yu Date: Mon, 29 Dec 1997 21:54:31 +0000 Subject: [PATCH] * init_rkey.c (mit_des_init_random_key): Punt the struct; use explicit variables instead because we're no longer doing a memcpy. In addition, fill p_state->sequence.data a byte at a time. [krb5-libs/492] git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@10344 dc483132-0cff-0310-8789-dd5450dbe970 --- src/lib/crypto/des/ChangeLog | 7 +++++++ src/lib/crypto/des/init_rkey.c | 20 +++++++++++++------- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/lib/crypto/des/ChangeLog b/src/lib/crypto/des/ChangeLog index 5c7439f69..2e816ff6f 100644 --- a/src/lib/crypto/des/ChangeLog +++ b/src/lib/crypto/des/ChangeLog @@ -1,3 +1,10 @@ +Thu Dec 25 20:57:53 1997 Tom Yu + + * init_rkey.c (mit_des_init_random_key): Punt the struct; use + explicit variables instead because we're no longer doing a + memcpy. In addition, fill p_state->sequence.data a byte at a + time. [krb5-libs/492] + Mon Oct 27 01:06:34 1997 Tom Yu * d3_cbc.c, des.h, des_int.h, f_cbc.c, f_cksum.c, f_ecb.c, diff --git a/src/lib/crypto/des/init_rkey.c b/src/lib/crypto/des/init_rkey.c index 923ddd550..5096647ec 100644 --- a/src/lib/crypto/des/init_rkey.c +++ b/src/lib/crypto/des/init_rkey.c @@ -48,10 +48,9 @@ mit_des_init_random_key (eblock, seedblock, state) krb5_error_code kret = 0; krb5_address **addrs = 0; krb5_data seed; - struct tval { - krb5_int32 seconds; - krb5_int32 microseconds; - } timenow; + krb5_int32 now; + krb5_int32 unow; + unsigned char *cp; switch (enctype) { @@ -137,9 +136,16 @@ mit_des_init_random_key (eblock, seedblock, state) if (kret) goto cleanup; /* sequence = time */ - (void) krb5_crypto_us_timeofday(&timenow.seconds, - &timenow.microseconds); - memcpy((char *)p_state->sequence.data, (char *)&timenow, sizeof(timenow)); + (void) krb5_crypto_us_timeofday(&now, &unow); + cp = p_state->sequence.data; + *cp++ = (now >> 24) & 0xff; + *cp++ = (now >> 16) & 0xff; + *cp++ = (now >> 8) & 0xff; + *cp++ = now & 0xff; + *cp++ = (unow >> 24) & 0xff; + *cp++ = (unow >> 16) & 0xff; + *cp++ = (unow >> 8) & 0xff; + *cp++ = unow &0xff; /* seed = random(tmp.seed, time) */ kret = mit_des_random_key(NULL, p_state, &new_key); -- 2.26.2