mem_sec.c: relax POSIX requirement.
authorAndy Polyakov <appro@openssl.org>
Sun, 25 Feb 2018 15:56:26 +0000 (16:56 +0100)
committerAndy Polyakov <appro@openssl.org>
Mon, 26 Feb 2018 16:52:20 +0000 (17:52 +0100)
Even though mlock(2) was standardized in POSIX.1-2001, vendors did
implement it prior that point.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/5460)

(cherry picked from commit 5839185cdd9b339ff741da437d964a25e72a3fb6)

crypto/mem_sec.c

index b626b3d396f6541bf4fb277dc79930a55a098c0c..c36e392610d67d075ef1d6a2e4cd6045283d00e1 100644 (file)
@@ -26,7 +26,9 @@
 
 /* e_os.h includes unistd.h, which defines _POSIX_VERSION */
 #if !defined(OPENSSL_NO_SECURE_MEMORY) && defined(OPENSSL_SYS_UNIX) \
-    && defined(_POSIX_VERSION) && _POSIX_VERSION >= 200112L
+    && ( (defined(_POSIX_VERSION) && _POSIX_VERSION >= 200112L) \
+         || defined(__sun) || defined(__hpux) || defined(__sgi) \
+         || defined(__osf__) )
 # define IMPLEMENTED
 # include <stdlib.h>
 # include <assert.h>