SP int neg sp_mont_red_ex: disallow negative numbers

Don't support negative a or m with sp_mont_red_ex().
This commit is contained in:
Sean Parkinson 2023-12-06 08:59:54 +10:00
parent 7753e3db8a
commit cf8a6efaa5

View File

@ -17524,6 +17524,11 @@ int sp_mont_red_ex(sp_int* a, const sp_int* m, sp_int_digit mp, int ct)
if ((a == NULL) || (m == NULL) || sp_iszero(m)) {
err = MP_VAL;
}
#ifdef WOLFSSL_SP_INT_NEGATIVE
else if ((a->sign == MP_NEG) || (m->sign == MP_NEG)) {
err = MP_VAL;
}
#endif
/* Ensure a has enough space for calculation. */
else if (a->size < m->used * 2 + 1) {
err = MP_VAL;