From 8d4b5260d22cc05894d606edd6cfc524661ab6e9 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Fri, 13 Nov 2020 10:16:55 +0000 Subject: [PATCH] Add MAP_CONCEAL from OpenBSD which has similar purpose but on mmap call level. Reviewed-by: Richard Levitte Reviewed-by: Paul Dale Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/13394) --- crypto/mem_sec.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crypto/mem_sec.c b/crypto/mem_sec.c index f27a759f173..cc4c4e08f6e 100644 --- a/crypto/mem_sec.c +++ b/crypto/mem_sec.c @@ -35,6 +35,9 @@ # if defined(__FreeBSD__) # define MADV_DONTDUMP MADV_NOCORE # endif +# if !defined(MAP_CONCEAL) +# define MAP_CONCEAL 0 +# endif # endif # if defined(OPENSSL_SYS_LINUX) # include @@ -471,7 +474,7 @@ static int sh_init(size_t size, size_t minsize) #if !defined(_WIN32) # ifdef MAP_ANON sh.map_result = mmap(NULL, sh.map_size, - PROT_READ|PROT_WRITE, MAP_ANON|MAP_PRIVATE, -1, 0); + PROT_READ|PROT_WRITE, MAP_ANON|MAP_PRIVATE|MAP_CONCEAL, -1, 0); # else { int fd; -- 2.47.2