]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Merge r1874323 from trunk:
authorEric Covener <covener@apache.org>
Thu, 12 Mar 2020 02:04:38 +0000 (02:04 +0000)
committerEric Covener <covener@apache.org>
Thu, 12 Mar 2020 02:04:38 +0000 (02:04 +0000)
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

modules/ssl/mod_ssl.c
modules/ssl/ssl_private.h

index f8d2ddd97c92cc03162f996f082d36e5e816f8dc..12617b234d762bd326d59319cfa3b51b7b13560e 100644 (file)
@@ -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.
      *
index a5c273a94c254088e9348a95cff58e805e3d238e..9e8bf891631a1aae9fc72d6c71912879c7ef8b29 100644 (file)
@@ -27,6 +27,7 @@
  */
 
 /** Apache headers */
+#include "ap_config.h"
 #include "httpd.h"
 #include "http_config.h"
 #include "http_core.h"