From f8866f8f665ac26beb31842fef48ecee5feb346e Mon Sep 17 00:00:00 2001 From: Georg Richter Date: Wed, 8 Mar 2017 17:39:47 +0100 Subject: MDEV-10332 support for OpenSSL 1.1 and LibreSSL Initial support tested against OpenSSL 1.0.1, 1.0.2, 1.1.0, Yassl and LibreSSL not working on Windows with native SChannel support, due to wrong cipher mapping: Latter one requires push of CONC-241 fixes. Please note that OpenSSL 0.9.8 and OpenSSL 1.1.0 will not work: Even if the build succeeds, test cases will fail with various errors, especially when using different tls libraries or versions for client and server. --- sql/slave.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'sql/slave.cc') diff --git a/sql/slave.cc b/sql/slave.cc index 7e7144f08e7..611baf6c9bc 100644 --- a/sql/slave.cc +++ b/sql/slave.cc @@ -60,6 +60,11 @@ #include "debug_sync.h" #include "rpl_parallel.h" +#if OPENSSL_VERSION_NUMBER >= 0x10100000L +#define ERR_remove_state(X) +#elif defined(HAVE_ERR_remove_thread_state) +#define ERR_remove_state(X) ERR_remove_thread_state(NULL) +#endif #define FLAGSTR(V,F) ((V)&(F)?#F" ":"") @@ -4673,7 +4678,11 @@ err_during_init: DBUG_LEAVE; // Must match DBUG_ENTER() my_thread_end(); #ifdef HAVE_OPENSSL +#if OPENSSL_VERSION_NUMBER < 0x10000000L ERR_remove_state(0); +#elif OPENSSL_VERSION_NUMBER < 0x10100000L + ERR_remove_thread_state(0); +#endif #endif pthread_exit(0); return 0; // Avoid compiler warnings @@ -5338,7 +5347,11 @@ err_during_init: DBUG_LEAVE; // Must match DBUG_ENTER() my_thread_end(); #ifdef HAVE_OPENSSL +#if OPENSSL_VERSION_NUMBER < 0x10000000L ERR_remove_state(0); +#elif OPENSSL_VERSION_NUMBER < 0x10100000L + ERR_remove_thread_state(0); +#endif #endif pthread_exit(0); return 0; // Avoid compiler warnings -- cgit v1.2.1