1From 3d59b2503307a50882e54553ea2b879f30fc1f00 Mon Sep 17 00:00:00 2001 2From: Tamas Ban <tamas.ban@arm.com> 3Date: Tue, 27 Oct 2020 08:55:37 +0000 4Subject: [PATCH 2/6] Enable crypto code sharing between independent binaries 5 6Signed-off-by: Tamas Ban <tamas.ban@arm.com> 7--- 8 code_share.c | 3 +++ 9 library/platform.c | 4 ++-- 10 library/platform_util.c | 2 +- 11 3 files changed, 6 insertions(+), 3 deletions(-) 12 create mode 100644 code_share.c 13 14diff --git a/code_share.c b/code_share.c 15new file mode 100644 16index 000000000..2bf67fb42 17--- /dev/null 18+++ b/code_share.c 19@@ -0,0 +1,3 @@ 20+/* This is a deliberately empty file just to check whether the patch for enabling 21+ * extensive crypto code sharing was already applied on the mbedtls library. 22+ */ 23diff --git a/library/platform.c b/library/platform.c 24index 890c4cbab..f8109c73f 100644 25--- a/library/platform.c 26+++ b/library/platform.c 27@@ -41,8 +41,8 @@ static void platform_free_uninit(void *ptr) 28 #define MBEDTLS_PLATFORM_STD_FREE platform_free_uninit 29 #endif /* !MBEDTLS_PLATFORM_STD_FREE */ 30 31-static void * (*mbedtls_calloc_func)(size_t, size_t) = MBEDTLS_PLATFORM_STD_CALLOC; 32-static void (*mbedtls_free_func)(void *) = MBEDTLS_PLATFORM_STD_FREE; 33+void * (*mbedtls_calloc_func)(size_t, size_t) = MBEDTLS_PLATFORM_STD_CALLOC; 34+void (*mbedtls_free_func)(void *) = MBEDTLS_PLATFORM_STD_FREE; 35 36 void *mbedtls_calloc(size_t nmemb, size_t size) 37 { 38diff --git a/library/platform_util.c b/library/platform_util.c 39index 19ef07aea..2d9c731d9 100644 40--- a/library/platform_util.c 41+++ b/library/platform_util.c 42@@ -88,7 +88,7 @@ 43 #if !defined(MBEDTLS_PLATFORM_HAS_EXPLICIT_BZERO) && !(defined(__STDC_LIB_EXT1__) && \ 44 !defined(__IAR_SYSTEMS_ICC__)) \ 45 && !defined(_WIN32) 46-static void *(*const volatile memset_func)(void *, int, size_t) = memset; 47+void *(*const volatile memset_func)(void *, int, size_t) = memset; 48 #endif 49 50 void mbedtls_platform_zeroize(void *buf, size_t len) 51-- 522.34.1 53 54