summaryrefslogtreecommitdiffstats
path: root/INSTALL
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2018-11-16 15:05:14 +0100
committerMatt Caswell <matt@openssl.org>2019-01-04 14:19:39 +0100
commit41999e7d358c3657a254b34b85fd9e948180529b (patch)
tree42267ffc53b96b3b1097a29d8678974267e2ffb7 /INSTALL
parentTest atexit handlers (diff)
downloadopenssl-41999e7d358c3657a254b34b85fd9e948180529b.tar.xz
openssl-41999e7d358c3657a254b34b85fd9e948180529b.zip
Introduce a no-pinshared option
This option prevents OpenSSL from pinning itself in memory. Fixes #7598 [extended tests] Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7647)
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL18
1 files changed, 18 insertions, 0 deletions
diff --git a/INSTALL b/INSTALL
index 049ff21f5c..2fd2235d14 100644
--- a/INSTALL
+++ b/INSTALL
@@ -416,6 +416,24 @@
no-pic
Don't build with support for Position Independent Code.
+ no-pinshared By default OpenSSL will attempt to stay in memory until the
+ process exits. This is so that libcrypto and libssl can be
+ properly cleaned up automatically via an "atexit()" handler.
+ The handler is registered by libcrypto and cleans up both
+ libraries. On some platforms the atexit() handler will run on
+ unload of libcrypto (if it has been dynamically loaded)
+ rather than at process exit. This option can be used to stop
+ OpenSSL from attempting to stay in memory until the process
+ exits. This could lead to crashes if either libcrypto or
+ libssl have already been unloaded at the point
+ that the atexit handler is invoked, e.g. on a platform which
+ calls atexit() on unload of the library, and libssl is
+ unloaded before libcrypto then a crash is likely to happen.
+ Applications can suppress running of the atexit() handler at
+ run time by using the OPENSSL_INIT_NO_ATEXIT option to
+ OPENSSL_init_crypto(). See the man page for it for further
+ details.
+
no-posix-io
Don't use POSIX IO capabilities.