blob: ed0309cadab9a22cad282987118cd9cd220e39a6 [file] [log] [blame]
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +01001From 3ff9c6c84191499859116b322f00da18e2472079 Mon Sep 17 00:00:00 2001
Tamas Ban4a5cc972020-10-27 09:03:56 +00002From: Tamas Ban <tamas.ban@arm.com>
3Date: Tue, 27 Oct 2020 08:55:37 +0000
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +01004Subject: [PATCH 2/6] Enable crypto code sharing between independent binaries
Tamas Ban4a5cc972020-10-27 09:03:56 +00005
6Signed-off-by: Tamas Ban <tamas.ban@arm.com>
7---
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +01008 code_share.c | 3 +++
Tamas Ban4a5cc972020-10-27 09:03:56 +00009 library/platform.c | 4 ++--
10 library/platform_util.c | 2 +-
11 3 files changed, 6 insertions(+), 3 deletions(-)
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +010012 create mode 100644 code_share.c
Tamas Ban4a5cc972020-10-27 09:03:56 +000013
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +010014diff --git a/code_share.c b/code_share.c
Tamas Ban4a5cc972020-10-27 09:03:56 +000015new file mode 100644
Summer Qind635cd02023-03-31 18:07:38 +080016index 00000000..2bf67fb4
Tamas Ban4a5cc972020-10-27 09:03:56 +000017--- /dev/null
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +010018+++ b/code_share.c
Tamas Ban4a5cc972020-10-27 09:03:56 +000019@@ -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
Summer Qind635cd02023-03-31 18:07:38 +080024index b15b7b29..dfd67410 100644
Tamas Ban4a5cc972020-10-27 09:03:56 +000025--- a/library/platform.c
26+++ b/library/platform.c
Summer Qind635cd02023-03-31 18:07:38 +080027@@ -53,8 +53,8 @@ static void platform_free_uninit(void *ptr)
Tamas Ban4a5cc972020-10-27 09:03:56 +000028 #define MBEDTLS_PLATFORM_STD_FREE platform_free_uninit
29 #endif /* !MBEDTLS_PLATFORM_STD_FREE */
30
Summer Qind635cd02023-03-31 18:07:38 +080031-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;
Tamas Ban4a5cc972020-10-27 09:03:56 +000035
Summer Qind635cd02023-03-31 18:07:38 +080036 void *mbedtls_calloc(size_t nmemb, size_t size)
Tamas Ban4a5cc972020-10-27 09:03:56 +000037 {
38diff --git a/library/platform_util.c b/library/platform_util.c
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +010039index 09216edf..3c0a50b0 100644
Tamas Ban4a5cc972020-10-27 09:03:56 +000040--- a/library/platform_util.c
41+++ b/library/platform_util.c
Antonio de Angelis3fae3ae2023-10-01 00:28:56 +010042@@ -100,7 +100,7 @@
43 #if !defined(MBEDTLS_PLATFORM_HAS_EXPLICIT_BZERO) && !(defined(__STDC_LIB_EXT1__) && \
44 !defined(__IAR_SYSTEMS_ICC__)) \
Summer Qind635cd02023-03-31 18:07:38 +080045 && !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
Tamas Ban4a5cc972020-10-27 09:03:56 +000049
Summer Qind635cd02023-03-31 18:07:38 +080050 void mbedtls_platform_zeroize(void *buf, size_t len)
Tamas Ban4a5cc972020-10-27 09:03:56 +000051--
Antonio de Angelis90bee0f2022-07-13 11:22:41 +0100522.25.1
Tamas Ban4a5cc972020-10-27 09:03:56 +000053