projects
/
openssl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
499e167
)
Make BN_mod_inverse a little faster
author
Bodo Möller
<bodo@openssl.org>
Wed, 29 Nov 2000 09:57:13 +0000
(09:57 +0000)
committer
Bodo Möller
<bodo@openssl.org>
Wed, 29 Nov 2000 09:57:13 +0000
(09:57 +0000)
crypto/bn/bn_gcd.c
patch
|
blob
|
history
diff --git
a/crypto/bn/bn_gcd.c
b/crypto/bn/bn_gcd.c
index d53f32656b2e84927109a1415030d734d7a30834..d361ada8b2183be3465698ee78737e3872493692 100644
(file)
--- a/
crypto/bn/bn_gcd.c
+++ b/
crypto/bn/bn_gcd.c
@@
-338,15
+338,15
@@
BIGNUM *BN_mod_inverse(BIGNUM *in,
{
if (!BN_lshift1(tmp,X)) goto err;
}
{
if (!BN_lshift1(tmp,X)) goto err;
}
- else if (BN_is_word(D,3))
- {
- if (!BN_lshift1(tmp,X)) goto err;
- if (!BN_add(tmp,tmp,X)) goto err;
- }
else if (BN_is_word(D,4))
{
if (!BN_lshift(tmp,X,2)) goto err;
}
else if (BN_is_word(D,4))
{
if (!BN_lshift(tmp,X,2)) goto err;
}
+ else if (D->top == 1)
+ {
+ if (!BN_copy(tmp,X)) goto err;
+ if (!BN_mul_word(tmp,D->d[0])) goto err;
+ }
else
{
if (!BN_mul(tmp,D,X,ctx)) goto err;
else
{
if (!BN_mul(tmp,D,X,ctx)) goto err;