bn_exp.c: fix x86_64-specific crash with one-word modulus.
[openssl.git] / crypto / bn / bn_exp.c
index c121122f3cb28668fb900cb90475443afdfe8296..2d051b2c35b852da488ab1dbe3d4691f2ec1fdb9 100644 (file)
@@ -909,7 +909,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,