diff --git a/CMakeLists.txt b/CMakeLists.txt index b13ba6248c..2419de626c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -883,6 +883,10 @@ if(CURL_USE_WOLFSSL) endif() set(_curl_ca_bundle_supported TRUE) + if(USE_OPENSSL AND WOLFSSL_VERSION VERSION_LESS 5.7.6) + message(FATAL_ERROR "wolfSSL 5.7.6 or newer is required to coexist with OpenSSL.") + endif() + set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS "WOLFSSL_OPTIONS_IGNORE_SYS") endif() diff --git a/lib/curl_setup.h b/lib/curl_setup.h index 2a1f75d441..b7c030c006 100644 --- a/lib/curl_setup.h +++ b/lib/curl_setup.h @@ -734,14 +734,9 @@ #endif #if defined(USE_OPENSSL) && defined(USE_WOLFSSL) -# include -# if LIBWOLFSSL_VERSION_HEX >= 0x05007006 -# ifndef OPENSSL_COEXIST -# define OPENSSL_COEXIST -# endif -# else -# error "OpenSSL can only coexist with wolfSSL v5.7.6 or upper" -# endif +#ifndef OPENSSL_COEXIST +#define OPENSSL_COEXIST +#endif #endif #if defined(USE_WOLFSSL) && defined(USE_GNUTLS) diff --git a/lib/vtls/wolfssl.c b/lib/vtls/wolfssl.c index 89310adfae..c2d134f7b8 100644 --- a/lib/vtls/wolfssl.c +++ b/lib/vtls/wolfssl.c @@ -36,6 +36,9 @@ #if LIBWOLFSSL_VERSION_HEX < 0x03004006 /* wolfSSL 3.4.6 (2015) */ #error "wolfSSL version should be at least 3.4.6" #endif +#if defined(OPENSSL_COEXIST) && LIBWOLFSSL_VERSION_HEX < 0x05007006 +#error "wolfSSL 5.7.6 or newer is required to coexist with OpenSSL" +#endif /* To determine what functions are available we rely on one or both of: - the user's options.h generated by wolfSSL