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