From bc707d67c37b63e1cd951f3c8bba39994144b3ac Mon Sep 17 00:00:00 2001 From: Guido Vranken Date: Sat, 6 Feb 2021 09:09:41 +0100 Subject: [PATCH] SP math: Better error propagation ZD 11650 --- wolfcrypt/src/sp_int.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/wolfcrypt/src/sp_int.c b/wolfcrypt/src/sp_int.c index 30d3d01a8..33fedd807 100644 --- a/wolfcrypt/src/sp_int.c +++ b/wolfcrypt/src/sp_int.c @@ -7854,8 +7854,10 @@ int sp_invmod(sp_int* a, sp_int* m, sp_int* r) } if (err == MP_OKAY) { _sp_sub_d(r, 1, r); - sp_div(r, a, r, NULL); - sp_sub(m, r, r); + err = sp_div(r, a, r, NULL); + if ( err == MP_OKAY ) { + sp_sub(m, r, r); + } } } else { @@ -13671,7 +13673,10 @@ int sp_gcd(sp_int* a, sp_int* b, sp_int* r) } } else { - sp_mod(u, v, t); + err = sp_mod(u, v, t); + } + if (err != MP_OKAY) { + break; } sp_copy(v, u); sp_copy(t, v);