diff options
author | Bodo Möller <bodo@openssl.org> | 2000-11-30 21:03:13 +0000 |
---|---|---|
committer | Bodo Möller <bodo@openssl.org> | 2000-11-30 21:03:13 +0000 |
commit | b2993bdea10ed0c1344ce8b9fa9ddacfe681e822 (patch) | |
tree | 9380a36d923ce965f77ebaaa77d276301d71d30f /crypto/bn | |
parent | 470fa98f8aa5ca37e7e6720be7ca1abda8f906f0 (diff) |
Remove randomness from the test. These constants give me a segment
violation in test_kron on a 32 bit system.
Diffstat (limited to 'crypto/bn')
-rw-r--r-- | crypto/bn/bntest.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/crypto/bn/bntest.c b/crypto/bn/bntest.c index 9162999c27..3c0c95feb6 100644 --- a/crypto/bn/bntest.c +++ b/crypto/bn/bntest.c @@ -949,21 +949,25 @@ int test_kron(BIO *bp, BN_CTX *ctx) #if 0 if (!BN_generate_prime(b, 512, 0, NULL, NULL, genprime_cb, NULL)) goto err; #else - BN_set_word(b,65537); + if (!BN_set_word(b,65537)) goto err; #endif putc('\n', stderr); for (i = 0; i < num0; i++) { +#if 0 if (!BN_rand(a, 512, 0, 0)) goto err; a->neg = rand_neg(); +#else + if (!BN_bin2bn("\x01\xff\xff\xff\xff", 5, a)) goto err; +#endif /* t := (b-1)/2 (note that b is odd) */ if (!BN_copy(t, b)) goto err; if (!BN_sub_word(t, 1)) goto err; if (!BN_rshift1(t, t)) goto err; /* r := a^t mod b */ -#if 1 +#if 0 if (!BN_mod_exp(r, a, t, b, ctx)) goto err; #elif 0 if (!BN_mod_exp_recp(r, a, t, b, ctx)) goto err; @@ -973,6 +977,8 @@ int test_kron(BIO *bp, BN_CTX *ctx) if (BN_is_word(r, 1)) legendre = 1; + else if (BN_is_zero(r)) + legendre = 0; else { if (!BN_add_word(r, 1)) goto err; |