mirror of
https://github.com/yuzu-emu/mbedtls.git
synced 2025-01-09 14:05:39 +00:00
Merge branch 'pr_1480' into development-proposed
This commit is contained in:
commit
90a8b5219f
|
@ -63,6 +63,8 @@ Changes
|
||||||
Alex Hixon.
|
Alex Hixon.
|
||||||
* Allow configuring the shared library extension by setting the DLEXT
|
* Allow configuring the shared library extension by setting the DLEXT
|
||||||
environment variable when using the project makefiles.
|
environment variable when using the project makefiles.
|
||||||
|
* Optimize unnecessary zeroing in mbedtls_mpi_copy. Based on a contribution
|
||||||
|
by Alexey Skalozub in #405.
|
||||||
|
|
||||||
= mbed TLS 2.8.0 branch released 2018-03-16
|
= mbed TLS 2.8.0 branch released 2018-03-16
|
||||||
|
|
||||||
|
|
|
@ -204,6 +204,8 @@ void mbedtls_mpi_free( mbedtls_mpi *X );
|
||||||
/**
|
/**
|
||||||
* \brief Enlarge to the specified number of limbs
|
* \brief Enlarge to the specified number of limbs
|
||||||
*
|
*
|
||||||
|
* This function does nothing if the MPI is already large enough.
|
||||||
|
*
|
||||||
* \param X MPI to grow
|
* \param X MPI to grow
|
||||||
* \param nblimbs The target number of limbs
|
* \param nblimbs The target number of limbs
|
||||||
*
|
*
|
||||||
|
@ -215,19 +217,23 @@ int mbedtls_mpi_grow( mbedtls_mpi *X, size_t nblimbs );
|
||||||
/**
|
/**
|
||||||
* \brief Resize down, keeping at least the specified number of limbs
|
* \brief Resize down, keeping at least the specified number of limbs
|
||||||
*
|
*
|
||||||
|
* If \c X is smaller than \c nblimbs, it is resized up
|
||||||
|
* instead.
|
||||||
|
*
|
||||||
* \param X MPI to shrink
|
* \param X MPI to shrink
|
||||||
* \param nblimbs The minimum number of limbs to keep
|
* \param nblimbs The minimum number of limbs to keep
|
||||||
*
|
*
|
||||||
* \return 0 if successful,
|
* \return 0 if successful,
|
||||||
* MBEDTLS_ERR_MPI_ALLOC_FAILED if memory allocation failed
|
* MBEDTLS_ERR_MPI_ALLOC_FAILED if memory allocation failed
|
||||||
|
* (this can only happen when resizing up).
|
||||||
*/
|
*/
|
||||||
int mbedtls_mpi_shrink( mbedtls_mpi *X, size_t nblimbs );
|
int mbedtls_mpi_shrink( mbedtls_mpi *X, size_t nblimbs );
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Copy the contents of Y into X
|
* \brief Copy the contents of Y into X
|
||||||
*
|
*
|
||||||
* \param X Destination MPI
|
* \param X Destination MPI. It is enlarged if necessary.
|
||||||
* \param Y Source MPI
|
* \param Y Source MPI.
|
||||||
*
|
*
|
||||||
* \return 0 if successful,
|
* \return 0 if successful,
|
||||||
* MBEDTLS_ERR_MPI_ALLOC_FAILED if memory allocation failed
|
* MBEDTLS_ERR_MPI_ALLOC_FAILED if memory allocation failed
|
||||||
|
|
|
@ -184,7 +184,7 @@ int mbedtls_mpi_shrink( mbedtls_mpi *X, size_t nblimbs )
|
||||||
*/
|
*/
|
||||||
int mbedtls_mpi_copy( mbedtls_mpi *X, const mbedtls_mpi *Y )
|
int mbedtls_mpi_copy( mbedtls_mpi *X, const mbedtls_mpi *Y )
|
||||||
{
|
{
|
||||||
int ret;
|
int ret = 0;
|
||||||
size_t i;
|
size_t i;
|
||||||
|
|
||||||
if( X == Y )
|
if( X == Y )
|
||||||
|
@ -203,9 +203,15 @@ int mbedtls_mpi_copy( mbedtls_mpi *X, const mbedtls_mpi *Y )
|
||||||
|
|
||||||
X->s = Y->s;
|
X->s = Y->s;
|
||||||
|
|
||||||
MBEDTLS_MPI_CHK( mbedtls_mpi_grow( X, i ) );
|
if( X->n < i )
|
||||||
|
{
|
||||||
|
MBEDTLS_MPI_CHK( mbedtls_mpi_grow( X, i ) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
memset( X->p + i, 0, ( X->n - i ) * ciL );
|
||||||
|
}
|
||||||
|
|
||||||
memset( X->p, 0, X->n * ciL );
|
|
||||||
memcpy( X->p, Y->p, i * ciL );
|
memcpy( X->p, Y->p, i * ciL );
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
|
|
Loading…
Reference in a new issue