diff options
author | Jacob Champion <jchampion@apache.org> | 2017-04-18 00:19:34 +0000 |
---|---|---|
committer | Jacob Champion <jchampion@apache.org> | 2017-04-18 00:19:34 +0000 |
commit | e8c348af4a3ba893cbf20231c6e5a29bae170aee (patch) | |
tree | cbb834ad600e77f528ada71bf8c6e0bec6efaadd | |
parent | 7b2bdcea91c8db88f572bfb495619356ed9a8ed5 (diff) | |
download | httpd-e8c348af4a3ba893cbf20231c6e5a29bae170aee.tar.gz |
PR60947: try to warn affected users...
...but at the moment, this won't actually get logged unless you're
running in debug mode, due to an unrelated bug (PR60999).
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/trunk-openssl-threadid@1791733 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | modules/ssl/ssl_util.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/modules/ssl/ssl_util.c b/modules/ssl/ssl_util.c index 488df0e102..1ae93acd19 100644 --- a/modules/ssl/ssl_util.c +++ b/modules/ssl/ssl_util.c @@ -442,6 +442,16 @@ void ssl_util_thread_id_setup(apr_pool_t *p) * better not get loaded into a different address during a restart. See * PR60947. */ CRYPTO_THREADID_set_callback(ssl_util_thr_id); + + if (CRYPTO_THREADID_get_callback() != ssl_util_thr_id) { + /* XXX Unfortunately this doesn't seem to get logged unless you're + * running in one-process mode, due to PR60999. */ + ap_log_perror(APLOG_MARK, APLOG_CRIT, 0, p, APLOGNO() + "OpenSSL's THREADID callback was already set to another address, " + "and the server is probably going to crash. See bug #60947 for " + "more details. You may need to recompile or upgrade either OpenSSL " + "or httpd."); + } #endif apr_pool_cleanup_register(p, NULL, ssl_util_thr_id_cleanup, |