summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/des/rand_key.c
diff options
context:
space:
mode:
authorbeck <>1999-09-29 04:37:45 +0000
committerbeck <>1999-09-29 04:37:45 +0000
commitde8f24ea083384bb66b32ec105dc4743c5663cdf (patch)
tree1412176ae62a3cab2cf2b0b92150fcbceaac6092 /src/lib/libcrypto/des/rand_key.c
parentcb929d29896bcb87c2a97417fbd03e50078fc178 (diff)
downloadopenbsd-de8f24ea083384bb66b32ec105dc4743c5663cdf.tar.gz
openbsd-de8f24ea083384bb66b32ec105dc4743c5663cdf.tar.bz2
openbsd-de8f24ea083384bb66b32ec105dc4743c5663cdf.zip
OpenSSL 0.9.4 merge
Diffstat (limited to 'src/lib/libcrypto/des/rand_key.c')
-rw-r--r--src/lib/libcrypto/des/rand_key.c22
1 files changed, 9 insertions, 13 deletions
diff --git a/src/lib/libcrypto/des/rand_key.c b/src/lib/libcrypto/des/rand_key.c
index 8c30bd029a..fc11792cda 100644
--- a/src/lib/libcrypto/des/rand_key.c
+++ b/src/lib/libcrypto/des/rand_key.c
@@ -62,15 +62,13 @@
62static int seed=0; 62static int seed=0;
63static des_cblock init; 63static des_cblock init;
64 64
65void des_random_seed(key) 65void des_random_seed(des_cblock *key)
66des_cblock key;
67 { 66 {
68 memcpy(init,key,sizeof(des_cblock)); 67 memcpy(&init,key,sizeof(des_cblock));
69 seed=1; 68 seed=1;
70 } 69 }
71 70
72void des_random_key(ret) 71void des_random_key(des_cblock *ret)
73unsigned char *ret;
74 { 72 {
75 des_key_schedule ks; 73 des_key_schedule ks;
76 static DES_LONG c=0; 74 static DES_LONG c=0;
@@ -101,15 +99,13 @@ unsigned char *ret;
101 t=(DES_LONG)((pid)|((c++)<<16)); 99 t=(DES_LONG)((pid)|((c++)<<16));
102 l2c(t,p); 100 l2c(t,p);
103 101
104 des_set_odd_parity((des_cblock *)data); 102 des_set_odd_parity(&data);
105 des_set_key((des_cblock *)data,ks); 103 des_set_key(&data,ks);
106 des_cbc_cksum((des_cblock *)key,(des_cblock *)key, 104 des_cbc_cksum(key,&key,sizeof(key),ks,&data);
107 (long)sizeof(key),ks,(des_cblock *)data);
108 105
109 des_set_odd_parity((des_cblock *)key); 106 des_set_odd_parity(&key);
110 des_set_key((des_cblock *)key,ks); 107 des_set_key(&key,ks);
111 des_cbc_cksum((des_cblock *)key,(des_cblock *)data, 108 des_cbc_cksum(key,&data,sizeof(key),ks,&key);
112 (long)sizeof(key),ks,(des_cblock *)key);
113 109
114 memcpy(ret,data,sizeof(key)); 110 memcpy(ret,data,sizeof(key));
115 memset(key,0,sizeof(key)); 111 memset(key,0,sizeof(key));