Fix losing sign when multiplying by -1

This commit is contained in:
Alexey Skalozub
2017-10-28 03:47:00 +03:00
parent 2c95a77cf9
commit 5405255928

View File

@@ -497,10 +497,14 @@ int mbedtls_mpi_mul_mpi( mbedtls_mpi *Z, const mbedtls_mpi *X, const mbedtls_mpi
return 0; return 0;
} }
if (bits_x == 1) { if (bits_x == 1) {
return mbedtls_mpi_copy(Z, Y); ret = mbedtls_mpi_copy(Z, Y);
Z->s *= X->s;
return ret;
} }
if (bits_y == 1) { if (bits_y == 1) {
return mbedtls_mpi_copy(Z, X); ret = mbedtls_mpi_copy(Z, X);
Z->s *= Y->s;
return ret;
} }
words_mult = (words_x > words_y ? words_x : words_y); words_mult = (words_x > words_y ? words_x : words_y);