summaryrefslogtreecommitdiffstats
path: root/crypto/bn
diff options
context:
space:
mode:
authorBodo Möller <bodo@openssl.org>2007-03-28 18:41:23 +0000
committerBodo Möller <bodo@openssl.org>2007-03-28 18:41:23 +0000
commitb002265ee34d1f0310009c4266ca865253b1a844 (patch)
tree17703aa296a37a438590d30b512b426dc99db5a5 /crypto/bn
parentbd31fb21454609b125ade1ad569ebcc2a2b9b73c (diff)
make BN_FLG_CONSTTIME semantics more fool-proof
Diffstat (limited to 'crypto/bn')
-rw-r--r--crypto/bn/bn_div.c2
-rw-r--r--crypto/bn/bn_gcd.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/crypto/bn/bn_div.c b/crypto/bn/bn_div.c
index 1fd0206e1d..9addaf158f 100644
--- a/crypto/bn/bn_div.c
+++ b/crypto/bn/bn_div.c
@@ -185,7 +185,7 @@ int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
BN_ULONG d0,d1;
int num_n,div_n;
- if (BN_get_flags(num, BN_FLG_CONSTTIME) != 0)
+ if ((BN_get_flags(num, BN_FLG_CONSTTIME) != 0) || (BN_get_flags(divisor, BN_FLG_CONSTTIME) != 0))
{
return BN_div_no_branch(dv, rm, num, divisor, ctx);
}
diff --git a/crypto/bn/bn_gcd.c b/crypto/bn/bn_gcd.c
index 9787a65f94..5fb8090c52 100644
--- a/crypto/bn/bn_gcd.c
+++ b/crypto/bn/bn_gcd.c
@@ -210,7 +210,7 @@ BIGNUM *BN_mod_inverse(BIGNUM *in,
BIGNUM *ret=NULL;
int sign;
- if (BN_get_flags(n, BN_FLG_CONSTTIME) != 0)
+ if ((BN_get_flags(a, BN_FLG_CONSTTIME) != 0) || (BN_get_flags(n, BN_FLG_CONSTTIME) != 0))
{
return BN_mod_inverse_no_branch(in, a, n, ctx);
}