diff options
author | 2006-06-27 05:06:51 +0000 | |
---|---|---|
committer | 2006-06-27 05:06:51 +0000 | |
commit | 6d388760ec629bdebe2f200913a35899243a7957 (patch) | |
tree | ecc7cf9ca37d08421471848c6f746702ed91b8e8 /lib/libcrypto/dsa/dsa_key.c | |
parent | import of openssl-0.9.7j (diff) | |
download | wireguard-openbsd-6d388760ec629bdebe2f200913a35899243a7957.tar.xz wireguard-openbsd-6d388760ec629bdebe2f200913a35899243a7957.zip |
resolve conflicts
Diffstat (limited to 'lib/libcrypto/dsa/dsa_key.c')
-rw-r--r-- | lib/libcrypto/dsa/dsa_key.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/libcrypto/dsa/dsa_key.c b/lib/libcrypto/dsa/dsa_key.c index 30607ca579f..980b6dc2d30 100644 --- a/lib/libcrypto/dsa/dsa_key.c +++ b/lib/libcrypto/dsa/dsa_key.c @@ -90,8 +90,22 @@ int DSA_generate_key(DSA *dsa) } else pub_key=dsa->pub_key; + + { + BIGNUM local_prk; + BIGNUM *prk; + + if ((dsa->flags & DSA_FLAG_NO_EXP_CONSTTIME) == 0) + { + BN_init(&local_prk); + prk = &local_prk; + BN_with_flags(prk, priv_key, BN_FLG_EXP_CONSTTIME); + } + else + prk = priv_key; - if (!BN_mod_exp(pub_key,dsa->g,priv_key,dsa->p,ctx)) goto err; + if (!BN_mod_exp(pub_key,dsa->g,prk,dsa->p,ctx)) goto err; + } dsa->priv_key=priv_key; dsa->pub_key=pub_key; |