mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-30 18:57:27 +02:00
Merge pull request #5850 from SparkiDev/sp_exptmod_nct_err_fix
SP int: fix check of err in _sp_exptmod_nct
This commit is contained in:
@ -13077,7 +13077,7 @@ static int _sp_exptmod_nct(const sp_int* b, const sp_int* e, const sp_int* m,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* 4. While at least window bits left. */
|
/* 4. While at least window bits left. */
|
||||||
while (err == MP_OKAY && ((i >= 0) || (c >= winBits))) {
|
while ((err == MP_OKAY) && ((i >= 0) || (c >= winBits))) {
|
||||||
/* Number of squares to before due to top bits being 0. */
|
/* Number of squares to before due to top bits being 0. */
|
||||||
int sqrs = 0;
|
int sqrs = 0;
|
||||||
|
|
||||||
@ -13101,9 +13101,9 @@ static int _sp_exptmod_nct(const sp_int* b, const sp_int* e, const sp_int* m,
|
|||||||
n <<= 1;
|
n <<= 1;
|
||||||
c--;
|
c--;
|
||||||
}
|
}
|
||||||
while (err == MP_OKAY && ((i >= 0) || (c >= winBits)));
|
while ((err == MP_OKAY) && ((i >= 0) || (c >= winBits)));
|
||||||
|
|
||||||
if (err == MP_OKAY && ((i >= 0) || (c >= winBits))) {
|
if ((err == MP_OKAY) && ((i >= 0) || (c >= winBits))) {
|
||||||
/* Add squares needed before using table entry. */
|
/* Add squares needed before using table entry. */
|
||||||
sqrs += winBits;
|
sqrs += winBits;
|
||||||
}
|
}
|
||||||
@ -13111,7 +13111,7 @@ static int _sp_exptmod_nct(const sp_int* b, const sp_int* e, const sp_int* m,
|
|||||||
/* 4.2. Montgomery square result for each leading 0 and window
|
/* 4.2. Montgomery square result for each leading 0 and window
|
||||||
* bits if bits left.
|
* bits if bits left.
|
||||||
*/
|
*/
|
||||||
for (; sqrs > 0; sqrs--) {
|
for (; (err == MP_OKAY) && (sqrs > 0); sqrs--) {
|
||||||
err = sp_sqr(tr, tr);
|
err = sp_sqr(tr, tr);
|
||||||
if (err == MP_OKAY) {
|
if (err == MP_OKAY) {
|
||||||
err = _sp_mont_red(tr, m, mp);
|
err = _sp_mont_red(tr, m, mp);
|
||||||
|
Reference in New Issue
Block a user