diff options
author | Richard Levitte <levitte@openssl.org> | 2017-02-01 02:29:46 +0100 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2017-02-01 03:17:38 +0100 |
commit | dfb109c522a450af7f387d66ad32afeee87f9805 (patch) | |
tree | c0f4af98bca68c415d2c424896f3ce3f550f88a7 /crypto/bn | |
parent | 12ac28e0928a9cb2b970042b86c0a5ff4476590b (diff) |
bn: fix occurance of negative zero in BN_rshift1()
Reviewed-by: Rich Salz <rsalz@openssl.org>
(cherry picked from commit 0a2dcb6990dacc94337f746f4f4a6dfac1fbeac4)
Diffstat (limited to 'crypto/bn')
-rw-r--r-- | crypto/bn/bn_shift.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/bn/bn_shift.c b/crypto/bn/bn_shift.c index b320602871..6a1eec80af 100644 --- a/crypto/bn/bn_shift.c +++ b/crypto/bn/bn_shift.c @@ -74,6 +74,8 @@ int BN_rshift1(BIGNUM *r, const BIGNUM *a) c = (t & 1) ? BN_TBIT : 0; } r->top = j; + if (!r->top) + r->neg = 0; /* don't allow negative zero */ bn_check_top(r); return (1); } |