summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/des/str2key.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/des/str2key.c')
-rw-r--r--src/lib/libcrypto/des/str2key.c20
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
61OPENSSL_EXTERN int des_check_key;
62
63void des_string_to_key(const char *str, des_cblock *key) 61void 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);