summaryrefslogtreecommitdiffstats
path: root/crypto/bn
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2014-07-02 19:35:50 +0200
committerAndy Polyakov <appro@openssl.org>2014-07-02 21:16:45 +0200
commit47b9e06cfd3a4fa89a690309e5839ed57e93f0f8 (patch)
tree433bf3609684b728fbc503bfdbd02cfec7e8321a /crypto/bn
parent88822622a14844aac791ab204a8db16f87b1224a (diff)
bn_exp.c: fix x86_64-specific crash with one-word modulus.
PR: #3397 (cherry picked from commit eca441b2b4d33d2a18d163ef9b4b3aff14251c73)
Diffstat (limited to 'crypto/bn')
-rw-r--r--crypto/bn/bn_exp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/bn/bn_exp.c b/crypto/bn/bn_exp.c
index 8fb319ad7c..735a300ace 100644
--- a/crypto/bn/bn_exp.c
+++ b/crypto/bn/bn_exp.c
@@ -908,7 +908,7 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p,
/* Dedicated window==4 case improves 512-bit RSA sign by ~15%, but as
* 512-bit RSA is hardly relevant, we omit it to spare size... */
- if (window==5)
+ if (window==5 && top>1)
{
void bn_mul_mont_gather5(BN_ULONG *rp,const BN_ULONG *ap,
const void *table,const BN_ULONG *np,