summaryrefslogtreecommitdiffstats
path: root/crypto/bn
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2011-06-22 15:23:40 +0000
committerDr. Stephen Henson <steve@openssl.org>2011-06-22 15:23:40 +0000
commitdcbe723bc5847d598ae5c06a89807cd8e813c605 (patch)
treec088daa10b3fc521ff1980603322e4458d6d8b99 /crypto/bn
parent33c98a28acc0c9d356b550d8c3c26f18512b9b21 (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')
-rw-r--r--crypto/bn/bn_gf2m.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/crypto/bn/bn_gf2m.c b/crypto/bn/bn_gf2m.c
index 3bf017feda..573156accb 100644
--- a/crypto/bn/bn_gf2m.c
+++ b/crypto/bn/bn_gf2m.c
@@ -547,6 +547,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))
{