Merge pull request #6942 from ucko/2023a-bignum
mbedtls_mpi_sub_abs: Skip memcpy when redundant (#6701).
This commit is contained in:
commit
a193986aab
2 changed files with 5 additions and 1 deletions
|
@ -0,0 +1,4 @@
|
|||
Bugfix
|
||||
* Fix potential undefined behavior in mbedtls_mpi_sub_abs(). Reported by
|
||||
Pascal Cuoq using TrustInSoft Analyzer in #6701; observed independently by
|
||||
Aaron Ucko under Valgrind.
|
|
@ -1009,7 +1009,7 @@ int mbedtls_mpi_sub_abs(mbedtls_mpi *X, const mbedtls_mpi *A, const mbedtls_mpi
|
|||
/* Set the high limbs of X to match A. Don't touch the lower limbs
|
||||
* because X might be aliased to B, and we must not overwrite the
|
||||
* significant digits of B. */
|
||||
if (A->n > n) {
|
||||
if (A->n > n && A != X) {
|
||||
memcpy(X->p + n, A->p + n, (A->n - n) * ciL);
|
||||
}
|
||||
if (X->n > A->n) {
|
||||
|
|
Loading…
Reference in a new issue