From: Jacob Champion Date: Tue, 18 Apr 2017 00:19:34 +0000 (+0000) Subject: PR60947: try to warn affected users... X-Git-Tag: 2.5.0-alpha~465^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e8c348af4a3ba893cbf20231c6e5a29bae170aee;p=thirdparty%2Fapache%2Fhttpd.git 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 --- diff --git a/modules/ssl/ssl_util.c b/modules/ssl/ssl_util.c index 488df0e1026..1ae93acd19c 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,