diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-11-18 09:50:37 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-11-18 09:50:37 (GMT) |
commit | c85162575b2a6ba6d8b7103a103d8724c2d51e03 (patch) | |
tree | c945d6b5352f04dfb8dcda9435522ae38bf25c51 /libtommath/bn_mp_exptmod_fast.c | |
parent | e0c2fc16a8641c16944de458557edf2d315d688b (diff) | |
parent | 44774dc3238ca1e269c6acedcbdfb449780c96f9 (diff) | |
download | tcl-c85162575b2a6ba6d8b7103a103d8724c2d51e03.zip tcl-c85162575b2a6ba6d8b7103a103d8724c2d51e03.tar.gz tcl-c85162575b2a6ba6d8b7103a103d8724c2d51e03.tar.bz2 |
Fix [e6f27aa56fa51bfc1752ce768bf0d301c60bfd2c|e6f27aa56f]: Update libtommath to 1.0
Diffstat (limited to 'libtommath/bn_mp_exptmod_fast.c')
-rw-r--r-- | libtommath/bn_mp_exptmod_fast.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/libtommath/bn_mp_exptmod_fast.c b/libtommath/bn_mp_exptmod_fast.c index 1902e79..8d280bd 100644 --- a/libtommath/bn_mp_exptmod_fast.c +++ b/libtommath/bn_mp_exptmod_fast.c @@ -1,4 +1,4 @@ -#include <tommath.h> +#include <tommath_private.h> #ifdef BN_MP_EXPTMOD_FAST_C /* LibTomMath, multiple-precision integer library -- Tom St Denis * @@ -12,7 +12,7 @@ * The library is free for all purposes without any express * guarantee it works. * - * Tom St Denis, tomstdenis@gmail.com, http://math.libtomcrypt.com + * Tom St Denis, tstdenis82@gmail.com, http://libtom.org */ /* computes Y == G**X mod P, HAC pp.616, Algorithm 14.85 @@ -96,8 +96,8 @@ int mp_exptmod_fast (mp_int * G, mp_int * X, mp_int * P, mp_int * Y, int redmode /* automatically pick the comba one if available (saves quite a few calls/ifs) */ #ifdef BN_FAST_MP_MONTGOMERY_REDUCE_C - if (((P->used * 2 + 1) < MP_WARRAY) && - P->used < (1 << ((CHAR_BIT * sizeof (mp_word)) - (2 * DIGIT_BIT)))) { + if ((((P->used * 2) + 1) < MP_WARRAY) && + (P->used < (1 << ((CHAR_BIT * sizeof(mp_word)) - (2 * DIGIT_BIT))))) { redux = fast_mp_montgomery_reduce; } else #endif @@ -219,12 +219,12 @@ int mp_exptmod_fast (mp_int * G, mp_int * X, mp_int * P, mp_int * Y, int redmode * in the exponent. Technically this opt is not required but it * does lower the # of trivial squaring/reductions used */ - if (mode == 0 && y == 0) { + if ((mode == 0) && (y == 0)) { continue; } /* if the bit is zero and mode == 1 then we square */ - if (mode == 1 && y == 0) { + if ((mode == 1) && (y == 0)) { if ((err = mp_sqr (&res, &res)) != MP_OKAY) { goto LBL_RES; } @@ -266,7 +266,7 @@ int mp_exptmod_fast (mp_int * G, mp_int * X, mp_int * P, mp_int * Y, int redmode } /* if bits remain then square/multiply */ - if (mode == 2 && bitcpy > 0) { + if ((mode == 2) && (bitcpy > 0)) { /* square then multiply if the bit is set */ for (x = 0; x < bitcpy; x++) { if ((err = mp_sqr (&res, &res)) != MP_OKAY) { @@ -314,3 +314,8 @@ LBL_M: return err; } #endif + + +/* $Source$ */ +/* $Revision$ */ +/* $Date$ */ |