Update with a proper check

This commit is contained in:
Tesfa Mael
2020-12-09 17:05:56 -08:00
parent 44903ff8ae
commit 4bd49d2b28

View File

@@ -1027,12 +1027,10 @@ void fp_mod_2d(fp_int *a, int b, fp_int *c)
c->dp[x] = 0; c->dp[x] = 0;
} }
/* clear the digit that is not completely outside/inside the modulus */ /* clear the digit that is not completely outside/inside the modulus */
x = DIGIT_BIT - b; x = DIGIT_BIT - (b % DIGIT_BIT);
if (x > 0) { if (x != DIGIT_BIT) {
c->dp[b / DIGIT_BIT] &= ~((fp_digit)0) >> x; c->dp[b / DIGIT_BIT] &= ~((fp_digit)0) >> x;
} }
else
c->dp[b / DIGIT_BIT] &= ~((fp_digit)0) << -x;
fp_clamp (c); fp_clamp (c);
} }