From: Eric Covener Date: Thu, 12 Mar 2020 02:04:38 +0000 (+0000) Subject: Merge r1874323 from trunk: X-Git-Tag: 2.4.42~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5fd6810751da05ed6fa40d4dbee84d208f1f5e85;p=thirdparty%2Fapache%2Fhttpd.git Merge r1874323 from trunk: mod_ssl: follow up to r1861950: allow for OPENSSL_init_ssl() without autoconf. For systems with no autoconf (eg. Windows), still check for and use OPENSSL_init_ssl() based on OpenSSL version >= 1.1.0. Usual LibreSSL gotcha, exclude LIBRESSL_VERSION_NUMBER from this new heuristic since autoconf is likely available in this case. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1875113 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/ssl/mod_ssl.c b/modules/ssl/mod_ssl.c index f8d2ddd97c9..12617b234d7 100644 --- a/modules/ssl/mod_ssl.c +++ b/modules/ssl/mod_ssl.c @@ -24,7 +24,6 @@ * Apache API interface structures */ -#include "ap_config_auto.h" #include "ssl_private.h" #include "mod_ssl.h" #include "mod_ssl_openssl.h" @@ -329,9 +328,10 @@ static int modssl_is_prelinked(void) static apr_status_t ssl_cleanup_pre_config(void *data) { -#if HAVE_OPENSSL_INIT_SSL - /* Openssl v1.1+ handles all termination automatically. Do - * nothing in this case. +#if HAVE_OPENSSL_INIT_SSL || (OPENSSL_VERSION_NUMBER >= 0x10100000L && \ + !defined(LIBRESSL_VERSION_NUMBER)) + /* Openssl v1.1+ handles all termination automatically from + * OPENSSL_init_ssl(). Do nothing in this case. */ #else @@ -395,7 +395,8 @@ static int ssl_hook_pre_config(apr_pool_t *pconf, { modssl_running_statically = modssl_is_prelinked(); -#if HAVE_OPENSSL_INIT_SSL +#if HAVE_OPENSSL_INIT_SSL || (OPENSSL_VERSION_NUMBER >= 0x10100000L && \ + !defined(LIBRESSL_VERSION_NUMBER)) /* Openssl v1.1+ handles all initialisation automatically, apart * from hints as to how we want to use the library. * diff --git a/modules/ssl/ssl_private.h b/modules/ssl/ssl_private.h index a5c273a94c2..9e8bf891631 100644 --- a/modules/ssl/ssl_private.h +++ b/modules/ssl/ssl_private.h @@ -27,6 +27,7 @@ */ /** Apache headers */ +#include "ap_config.h" #include "httpd.h" #include "http_config.h" #include "http_core.h"