diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2011-06-22 15:23:32 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2011-06-22 15:23:32 +0000 |
commit | 419a530194596cf80c4d34e785dcee007639c337 (patch) | |
tree | 7db08dc0027559330c65377c06e68de5ae4a0fd2 /crypto/bn/bn_gf2m.c | |
parent | 69a8901eb18f38cfefe50e7fd47258c7e639a120 (diff) |
PR: 2540
Submitted by: emmanuel.azencot@bull.net
Reviewed by: steve
Prevent infinite loop in BN_GF2m_mod_inv().
Diffstat (limited to 'crypto/bn/bn_gf2m.c')
-rw-r--r-- | crypto/bn/bn_gf2m.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/crypto/bn/bn_gf2m.c b/crypto/bn/bn_gf2m.c index 527b0fa15b..432a3aa338 100644 --- a/crypto/bn/bn_gf2m.c +++ b/crypto/bn/bn_gf2m.c @@ -545,6 +545,7 @@ int BN_GF2m_mod_inv(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) { while (!BN_is_odd(u)) { + if (BN_is_zero(u)) goto err; if (!BN_rshift1(u, u)) goto err; if (BN_is_odd(b)) { |