Replace memset() with mbedtls_platform_memset()
Steps:
1. sed -i 's/\bmemset(\([^)]\)/mbedtls_platform_memset(\1/g' library/*.c tinycrypt/*.c include/mbedtls/*.h scripts/data_files/*.fmt
2. Manually edit library/platform_util.c to revert to memset() in the
implementations of mbedtls_platform_memset() and mbedtls_platform_memcpy()
3. egrep -n '\<memset\>' library/*.c include/mbedtls/*.h tinycrypt/*.c
The remaining occurrences are in three categories:
a. From point 2 above.
b. In comments.
c. In the initialisation of memset_func, to be changed in a future commit.
diff --git a/library/md.c b/library/md.c
index 882942e..92fe3a4 100644
--- a/library/md.c
+++ b/library/md.c
@@ -387,7 +387,7 @@
void mbedtls_md_init( mbedtls_md_context_t *ctx )
{
- memset( ctx, 0, sizeof( mbedtls_md_context_t ) );
+ mbedtls_platform_memset( ctx, 0, sizeof( mbedtls_md_context_t ) );
#if defined(MBEDTLS_MD_SINGLE_HASH)
mbedtls_md_info_init( mbedtls_md_get_handle( ctx ),
@@ -563,8 +563,8 @@
opad = (unsigned char *) ctx->hmac_ctx +
mbedtls_md_info_block_size( md_info );
- memset( ipad, 0x36, mbedtls_md_info_block_size( md_info ) );
- memset( opad, 0x5C, mbedtls_md_info_block_size( md_info ) );
+ mbedtls_platform_memset( ipad, 0x36, mbedtls_md_info_block_size( md_info ) );
+ mbedtls_platform_memset( opad, 0x5C, mbedtls_md_info_block_size( md_info ) );
for( i = 0; i < keylen; i++ )
{