From 47b9e06cfd3a4fa89a690309e5839ed57e93f0f8 Mon Sep 17 00:00:00 2001 From: Andy Polyakov Date: Wed, 2 Jul 2014 19:35:50 +0200 Subject: [PATCH] bn_exp.c: fix x86_64-specific crash with one-word modulus. PR: #3397 (cherry picked from commit eca441b2b4d33d2a18d163ef9b4b3aff14251c73) --- crypto/bn/bn_exp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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,