diff options
author | Andy Polyakov <appro@openssl.org> | 2018-07-25 10:29:51 +0200 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2018-07-26 13:56:05 +0200 |
commit | 70a579ae2f37437a1e02331eeaa84e1b68ba021e (patch) | |
tree | c81ecc60120d129b210bfb96edb1c6188deeb0c6 /crypto/bn | |
parent | 06deb93286ac5f125fc81ddc9260b9de2311c7f3 (diff) | |
download | openssl-70a579ae2f37437a1e02331eeaa84e1b68ba021e.zip openssl-70a579ae2f37437a1e02331eeaa84e1b68ba021e.tar.gz openssl-70a579ae2f37437a1e02331eeaa84e1b68ba021e.tar.bz2 |
bn/bn_mod.c: harmonize BN_mod_add_quick with original implementation.
New implementation failed to correctly reset r->neg flag. Spotted by
OSSFuzz.
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6783)
Diffstat (limited to 'crypto/bn')
-rw-r--r-- | crypto/bn/bn_mod.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/crypto/bn/bn_mod.c b/crypto/bn/bn_mod.c index 463d2d6..d8e2e12 100644 --- a/crypto/bn/bn_mod.c +++ b/crypto/bn/bn_mod.c @@ -83,6 +83,7 @@ int bn_mod_add_fixed_top(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, ((volatile BN_ULONG *)tp)[i] = 0; } r->top = mtop; + r->neg = 0; if (tp != storage) OPENSSL_free(tp); |