From 7e8f1916d6d90b6b2a68833846a52e1ea9dbb309 Mon Sep 17 00:00:00 2001 From: Zenju Date: Tue, 9 Jul 2019 11:24:41 +0200 Subject: [PATCH] openssl: define HAVE_SSL_GET_SHUTDOWN based on version number Closes #4100 --- configure.ac | 4 ---- lib/config-symbian.h | 5 +---- lib/config-vxworks.h | 3 --- lib/curl_config.h.cmake | 3 --- lib/vtls/openssl.c | 4 ++++ packages/vms/config_h.com | 13 ------------- 6 files changed, 5 insertions(+), 27 deletions(-) diff --git a/configure.ac b/configure.ac index dc97ba108..cbf038080 100755 --- a/configure.ac +++ b/configure.ac @@ -1826,13 +1826,9 @@ if test -z "$ssl_backends" -o "x$OPT_SSL" != xno && if test X"$OPENSSL_ENABLED" = X"1"; then dnl These can only exist if OpenSSL exists - dnl Older versions of Cyassl (some time before 2.9.4) don't have - dnl SSL_get_shutdown (but this check won't actually detect it there - dnl as it's a macro that needs the header files be included) dnl OpenSSL_version is introduced in 3.0.0 AC_CHECK_FUNCS( RAND_egd \ - SSL_get_shutdown \ SSLv2_client_method \ OpenSSL_version ) diff --git a/lib/config-symbian.h b/lib/config-symbian.h index d23de3325..b7b93c6f4 100644 --- a/lib/config-symbian.h +++ b/lib/config-symbian.h @@ -7,7 +7,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. + * Copyright (C) 1998 - 2019, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -478,9 +478,6 @@ /* Define to 1 if you have the `socket' function. */ #define HAVE_SOCKET 1 -/* Define to 1 if you have the `SSL_get_shutdown' function. */ -/*#define HAVE_SSL_GET_SHUTDOWN 1*/ - /* Define to 1 if you have the header file. */ /* #undef HAVE_SSL_H */ diff --git a/lib/config-vxworks.h b/lib/config-vxworks.h index 8790f8266..89af3525b 100644 --- a/lib/config-vxworks.h +++ b/lib/config-vxworks.h @@ -541,9 +541,6 @@ /* Define to 1 if you have the `socket' function. */ #define HAVE_SOCKET 1 -/* Define to 1 if you have the `SSL_get_shutdown' function. */ -#define HAVE_SSL_GET_SHUTDOWN 1 - /* Define to 1 if you have the header file. */ /* #undef HAVE_SSL_H */ diff --git a/lib/curl_config.h.cmake b/lib/curl_config.h.cmake index 3d96c498c..5458cbaca 100644 --- a/lib/curl_config.h.cmake +++ b/lib/curl_config.h.cmake @@ -587,9 +587,6 @@ /* Define to 1 if you have the `socket' function. */ #cmakedefine HAVE_SOCKET 1 -/* Define to 1 if you have the `SSL_get_shutdown' function. */ -#cmakedefine HAVE_SSL_GET_SHUTDOWN 1 - /* Define to 1 if you have the header file. */ #cmakedefine HAVE_SSL_H 1 diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c index 1d2ec04ed..fb9f27123 100644 --- a/lib/vtls/openssl.c +++ b/lib/vtls/openssl.c @@ -156,6 +156,10 @@ #define HAVE_X509_GET0_SIGNATURE 1 #endif +#if (OPENSSL_VERSION_NUMBER >= 0x1000200fL) /* 1.0.2 or later */ +#define HAVE_SSL_GET_SHUTDOWN 1 +#endif + #if OPENSSL_VERSION_NUMBER >= 0x10002003L && \ OPENSSL_VERSION_NUMBER <= 0x10002FFFL && \ !defined(OPENSSL_NO_COMP) diff --git a/packages/vms/config_h.com b/packages/vms/config_h.com index 0f1fa0f62..967eb40de 100644 --- a/packages/vms/config_h.com +++ b/packages/vms/config_h.com @@ -825,19 +825,6 @@ $ endif $ goto cfgh_in_loop1 $ endif $! -$ if key2 .eqs. "HAVE_SSL_GET_SHUTDOWN" -$ then -$ if f$search("''ssl_header_dir'ssl.h") .nes. "" -$ then -$ write tf "#ifndef ''key2'" -$ write tf "#define ''key2' 1" -$ write tf "#endif" -$ else -$ write tf "/* #undef ''key2' */" -$ endif -$ goto cfgh_in_loop1 -$ endif -$! $ if key2b .eqs. "RAND" .and. key2c .nes. "" .and. key2d .eqs. "" $ then $ if (key2c .eqs. "EGD") .or. - -- 2.40.0