Standardize prototypes of platform_memcpy/memset

As replacements of standard library functions, they should have the same
prototype, including return type.

While it doesn't usually matter when used directly, it does when the address
of the function is taken, as done with memset_func, used for implementing
mbedtls_platform_zeroize().
This commit is contained in:
Manuel Pégourié-Gonnard 2019-10-02 16:01:14 +02:00 committed by Jarno Lamsa
parent a1e5054d91
commit 51f65e4b86
2 changed files with 8 additions and 6 deletions

View file

@ -178,8 +178,9 @@ void mbedtls_platform_zeroize( void *buf, size_t len );
* \param value Value to be used when setting the buffer.
* \param num The length of the buffer in bytes.
*
* \return The value of \p ptr.
*/
void mbedtls_platform_memset( void *ptr, int value, size_t num );
void *mbedtls_platform_memset( void *ptr, int value, size_t num );
/**
* \brief Secure memcpy
@ -195,8 +196,9 @@ void mbedtls_platform_memset( void *ptr, int value, size_t num );
* \param src Source buffer where the data is being copied from.
* \param num The length of the buffers in bytes.
*
* \return The value of \p dst.
*/
void mbedtls_platform_memcpy( void *dst, const void *src, size_t num );
void *mbedtls_platform_memcpy( void *dst, const void *src, size_t num );
/**
* \brief Secure memcmp

View file

@ -79,7 +79,7 @@ void mbedtls_platform_zeroize( void *buf, size_t len )
}
#endif /* MBEDTLS_PLATFORM_ZEROIZE_ALT */
void mbedtls_platform_memset( void *ptr, int value, size_t num )
void *mbedtls_platform_memset( void *ptr, int value, size_t num )
{
/* Randomize start offset. */
size_t start_offset = (size_t) mbedtls_platform_random_in_range( num );
@ -93,10 +93,10 @@ void mbedtls_platform_memset( void *ptr, int value, size_t num )
memset( (void *) ptr, data, start_offset );
/* Perform the original memset */
memset( ptr, value, num );
return( memset( ptr, value, num ) );
}
void mbedtls_platform_memcpy( void *dst, const void *src, size_t num )
void *mbedtls_platform_memcpy( void *dst, const void *src, size_t num )
{
/* Randomize start offset. */
size_t start_offset = (size_t) mbedtls_platform_random_in_range( num );
@ -107,7 +107,7 @@ void mbedtls_platform_memcpy( void *dst, const void *src, size_t num )
memcpy( (void *) ( (unsigned char *) dst + start_offset ),
(void *) ( (unsigned char *) src + start_offset ),
( num - start_offset ) );
memcpy( (void *) dst, (void *) src, start_offset );
return( memcpy( (void *) dst, (void *) src, start_offset ) );
}
int mbedtls_platform_memcmp( const void *buf1, const void *buf2, size_t num )