diff options
author | djm <> | 2006-03-14 20:34:33 +0000 |
---|---|---|
committer | djm <> | 2006-03-14 20:34:33 +0000 |
commit | a8c113c1752aac8d7cff08f9ce0b5b3a837482f3 (patch) | |
tree | 1169a48f90276903455eb28bcd5d6ca59c0da836 /src | |
parent | aee5b22dcf9bb7d99eb45989ddbf221eedf4c6fc (diff) | |
download | openbsd-a8c113c1752aac8d7cff08f9ce0b5b3a837482f3.tar.gz openbsd-a8c113c1752aac8d7cff08f9ce0b5b3a837482f3.tar.bz2 openbsd-a8c113c1752aac8d7cff08f9ce0b5b3a837482f3.zip |
make BN_is_prime() realise that 2 is, in fact, a prime number.
from OpenSSL CVS; ok otto@ deraadt@
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libcrypto/bn/bn_prime.c | 4 | ||||
-rw-r--r-- | src/lib/libssl/src/crypto/bn/bn_prime.c | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/libcrypto/bn/bn_prime.c b/src/lib/libcrypto/bn/bn_prime.c index e072d9255c..f422172f16 100644 --- a/src/lib/libcrypto/bn/bn_prime.c +++ b/src/lib/libcrypto/bn/bn_prime.c | |||
@@ -234,7 +234,9 @@ int BN_is_prime_fasttest(const BIGNUM *a, int checks, | |||
234 | 234 | ||
235 | /* first look for small factors */ | 235 | /* first look for small factors */ |
236 | if (!BN_is_odd(a)) | 236 | if (!BN_is_odd(a)) |
237 | return 0; | 237 | /* a is even => a is prime if and only if a == 2 */ |
238 | return BN_is_word(a, 2); | ||
239 | |||
238 | if (do_trial_division) | 240 | if (do_trial_division) |
239 | { | 241 | { |
240 | for (i = 1; i < NUMPRIMES; i++) | 242 | for (i = 1; i < NUMPRIMES; i++) |
diff --git a/src/lib/libssl/src/crypto/bn/bn_prime.c b/src/lib/libssl/src/crypto/bn/bn_prime.c index e072d9255c..f422172f16 100644 --- a/src/lib/libssl/src/crypto/bn/bn_prime.c +++ b/src/lib/libssl/src/crypto/bn/bn_prime.c | |||
@@ -234,7 +234,9 @@ int BN_is_prime_fasttest(const BIGNUM *a, int checks, | |||
234 | 234 | ||
235 | /* first look for small factors */ | 235 | /* first look for small factors */ |
236 | if (!BN_is_odd(a)) | 236 | if (!BN_is_odd(a)) |
237 | return 0; | 237 | /* a is even => a is prime if and only if a == 2 */ |
238 | return BN_is_word(a, 2); | ||
239 | |||
238 | if (do_trial_division) | 240 | if (do_trial_division) |
239 | { | 241 | { |
240 | for (i = 1; i < NUMPRIMES; i++) | 242 | for (i = 1; i < NUMPRIMES; i++) |