From: Pascal Cuoq Date: Wed, 6 May 2015 09:31:27 +0000 (+0200) Subject: Set flags to 0 before calling BN_with_flags() X-Git-Tag: OpenSSL_1_0_2e~62 X-Git-Url: https://git.openssl.org/?p=openssl.git;a=commitdiff_plain;h=6481be7346baea1ce0dcfe0a1ff28b0f44e9ce31;hp=cba874539596a3f6563c4b462793a99965bcf1e1 Set flags to 0 before calling BN_with_flags() BN_with_flags() will read the dest->flags to keep the BN_FLG_MALLOCED but overwrites everything else. Signed-off-by: Kurt Roeckx Reviewed-by: Rich Salz MR #1231 (cherry picked from commit f92768e6f5259069bd21dbed2b98b3423c1dfca4) --- diff --git a/crypto/bn/bn_gcd.c b/crypto/bn/bn_gcd.c index 97c55ab720..ce59fe701f 100644 --- a/crypto/bn/bn_gcd.c +++ b/crypto/bn/bn_gcd.c @@ -583,6 +583,7 @@ static BIGNUM *BN_mod_inverse_no_branch(BIGNUM *in, * BN_div_no_branch will be called eventually. */ pB = &local_B; + local_B.flags = 0; BN_with_flags(pB, B, BN_FLG_CONSTTIME); if (!BN_nnmod(B, pB, A, ctx)) goto err; @@ -610,6 +611,7 @@ static BIGNUM *BN_mod_inverse_no_branch(BIGNUM *in, * BN_div_no_branch will be called eventually. */ pA = &local_A; + local_A.flags = 0; BN_with_flags(pA, A, BN_FLG_CONSTTIME); /* (D, M) := (A/B, A%B) ... */