diff options
author | beck <> | 2000-04-15 06:18:51 +0000 |
---|---|---|
committer | beck <> | 2000-04-15 06:18:51 +0000 |
commit | b608c7f2b175e121f2c22d53341a317153afdc8e (patch) | |
tree | e94b160b3fcd8180df79e4251d68d24d665f0195 /src/lib/libcrypto/des/rand_key.c | |
parent | c8d6701c396cebdcd0d45eac73b762e9498f6b01 (diff) | |
download | openbsd-b608c7f2b175e121f2c22d53341a317153afdc8e.tar.gz openbsd-b608c7f2b175e121f2c22d53341a317153afdc8e.tar.bz2 openbsd-b608c7f2b175e121f2c22d53341a317153afdc8e.zip |
OpenSSL 0.9.5a merge
Diffstat (limited to 'src/lib/libcrypto/des/rand_key.c')
-rw-r--r-- | src/lib/libcrypto/des/rand_key.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/libcrypto/des/rand_key.c b/src/lib/libcrypto/des/rand_key.c index 7816a8f25c..ee1a6c274e 100644 --- a/src/lib/libcrypto/des/rand_key.c +++ b/src/lib/libcrypto/des/rand_key.c | |||
@@ -63,7 +63,11 @@ void des_random_seed(des_cblock *key) | |||
63 | 63 | ||
64 | int des_random_key(des_cblock *ret) | 64 | int des_random_key(des_cblock *ret) |
65 | { | 65 | { |
66 | int r = RAND_bytes((unsigned char *)ret, sizeof(des_cblock)); | 66 | do |
67 | { | ||
68 | if (RAND_bytes((unsigned char *)ret, sizeof(des_cblock)) != 1) | ||
69 | return (0); | ||
70 | } while (des_is_weak_key(ret)); | ||
67 | des_set_odd_parity(ret); | 71 | des_set_odd_parity(ret); |
68 | return r; | 72 | return (1); |
69 | } | 73 | } |