diff options
Diffstat (limited to 'src/lib/libcrypto/des/str2key.c')
-rw-r--r-- | src/lib/libcrypto/des/str2key.c | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/src/lib/libcrypto/des/str2key.c b/src/lib/libcrypto/des/str2key.c index 24841452f1..c6abb87201 100644 --- a/src/lib/libcrypto/des/str2key.c +++ b/src/lib/libcrypto/des/str2key.c | |||
@@ -58,8 +58,6 @@ | |||
58 | 58 | ||
59 | #include "des_locl.h" | 59 | #include "des_locl.h" |
60 | 60 | ||
61 | OPENSSL_EXTERN int des_check_key; | ||
62 | |||
63 | void des_string_to_key(const char *str, des_cblock *key) | 61 | void des_string_to_key(const char *str, des_cblock *key) |
64 | { | 62 | { |
65 | des_key_schedule ks; | 63 | des_key_schedule ks; |
@@ -88,11 +86,8 @@ void des_string_to_key(const char *str, des_cblock *key) | |||
88 | } | 86 | } |
89 | #endif | 87 | #endif |
90 | des_set_odd_parity(key); | 88 | des_set_odd_parity(key); |
91 | i=des_check_key; | 89 | des_set_key_unchecked(key,ks); |
92 | des_check_key=0; | 90 | des_cbc_cksum((const unsigned char*)str,key,length,ks,key); |
93 | des_set_key(key,ks); | ||
94 | des_check_key=i; | ||
95 | des_cbc_cksum((unsigned char*)str,key,length,ks,key); | ||
96 | memset(ks,0,sizeof(ks)); | 91 | memset(ks,0,sizeof(ks)); |
97 | des_set_odd_parity(key); | 92 | des_set_odd_parity(key); |
98 | } | 93 | } |
@@ -150,13 +145,10 @@ void des_string_to_2keys(const char *str, des_cblock *key1, des_cblock *key2) | |||
150 | #endif | 145 | #endif |
151 | des_set_odd_parity(key1); | 146 | des_set_odd_parity(key1); |
152 | des_set_odd_parity(key2); | 147 | des_set_odd_parity(key2); |
153 | i=des_check_key; | 148 | des_set_key_unchecked(key1,ks); |
154 | des_check_key=0; | 149 | des_cbc_cksum((const unsigned char*)str,key1,length,ks,key1); |
155 | des_set_key(key1,ks); | 150 | des_set_key_unchecked(key2,ks); |
156 | des_cbc_cksum((unsigned char*)str,key1,length,ks,key1); | 151 | des_cbc_cksum((const unsigned char*)str,key2,length,ks,key2); |
157 | des_set_key(key2,ks); | ||
158 | des_cbc_cksum((unsigned char*)str,key2,length,ks,key2); | ||
159 | des_check_key=i; | ||
160 | memset(ks,0,sizeof(ks)); | 152 | memset(ks,0,sizeof(ks)); |
161 | des_set_odd_parity(key1); | 153 | des_set_odd_parity(key1); |
162 | des_set_odd_parity(key2); | 154 | des_set_odd_parity(key2); |