X-Git-Url: https://www.bearssl.org/gitweb//home/git/?p=BearSSL;a=blobdiff_plain;f=src%2Fint%2Fi15_modpow2.c;h=37073a425ac41b6c2caed27b1288f34886a53372;hp=dce9941e2ceaf54a3b744f06f240387ce888f2f1;hb=refs%2Ftags%2Fv0.5;hpb=556e525d62cd5559e74fe4d2777a59d33590a033 diff --git a/src/int/i15_modpow2.c b/src/int/i15_modpow2.c index dce9941..37073a4 100644 --- a/src/int/i15_modpow2.c +++ b/src/int/i15_modpow2.c @@ -41,6 +41,7 @@ br_i15_modpow_opt(uint16_t *x, */ mwlen = (m[0] + 31) >> 4; mlen = mwlen * sizeof m[0]; + mwlen += (mwlen & 1); t1 = tmp; t2 = tmp + mwlen; @@ -86,7 +87,7 @@ br_i15_modpow_opt(uint16_t *x, * one word-sized shift. */ br_i15_zero(x, m[0]); - x[mwlen - 1] = 1; + x[(m[0] + 15) >> 4] = 1; br_i15_muladd_small(x, 0, m); /*