[openssl] master update

Kurt Roeckx kurt at openssl.org
Mon Apr 15 20:38:48 UTC 2019


The branch master has been updated
       via  3e3dcf9ab8a2fc0214502dad56d94fd95bcbbfd5 (commit)
      from  72eb100f8a38c5b3822d7751eddaa2f3f4576fa1 (commit)


- Log -----------------------------------------------------------------
commit 3e3dcf9ab8a2fc0214502dad56d94fd95bcbbfd5
Author: Kurt Roeckx <kurt at roeckx.be>
Date:   Sat Apr 13 14:04:35 2019 +0200

    Call RSA generation callback at the correct time.
    
    The callback should be called with 1 when a Miller-Rabin round marked
    the candidate as probably prime.
    
    Reviewed-by: Bernd Edlinger <bernd.edlinger at hotmail.de>
    GH: #8742

-----------------------------------------------------------------------

Summary of changes:
 crypto/bn/bn_prime.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/crypto/bn/bn_prime.c b/crypto/bn/bn_prime.c
index 2c9f89d..03402c2 100644
--- a/crypto/bn/bn_prime.c
+++ b/crypto/bn/bn_prime.c
@@ -329,8 +329,6 @@ int bn_miller_rabin_is_prime(const BIGNUM *w, int iterations, BN_CTX *ctx,
             if (BN_is_one(z))
                 goto composite;
         }
-        if (!BN_GENCB_call(cb, 1, i))
-            goto err;
         /* At this point z = b^((w-1)/2) mod w */
         /* (Steps 4.8 - 4.9) x = z, z = x^2 mod w */
         if (!BN_copy(x, z) || !BN_mod_mul(z, x, x, w, ctx))
@@ -358,6 +356,8 @@ composite:
         goto err;
 outer_loop: ;
         /* (Step 4.1.5) */
+        if (!BN_GENCB_call(cb, 1, i))
+            goto err;
     }
     /* (Step 5) */
     *status = BN_PRIMETEST_PROBABLY_PRIME;


More information about the openssl-commits mailing list