--- mysql-5.7.31/cmake/ssl.cmake.orig 2020-06-02 13:05:42.000000000 +0200 +++ mysql-5.7.31/cmake/ssl.cmake 2021-09-26 10:27:27.431001078 +0200 @@ -172,20 +172,28 @@ # #define OPENSSL_VERSION_NUMBER 0x1000103fL # Encoded as MNNFFPPS: major minor fix patch status FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" - OPENSSL_VERSION_NUMBER - REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*" + OPENSSL_VERSION_MAJOR + REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_MAJOR[\t ]+([0-9]+).*" ) STRING(REGEX REPLACE - "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9]).*$" "\\1" - OPENSSL_MAJOR_VERSION "${OPENSSL_VERSION_NUMBER}" + "^#[ ]*define[\t ]+OPENSSL_VERSION_MAJOR[\t ]+([0-9]+).*" "\\1" + OPENSSL_MAJOR_VERSION ${OPENSSL_VERSION_MAJOR} + ) + FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" + OPENSSL_VERSION_MINOR + REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_MINOR[\t ]+([0-9]+).*" ) STRING(REGEX REPLACE - "^.*OPENSSL_VERSION_NUMBER[\t ]+0x[0-9]([0-9][0-9]).*$" "\\1" - OPENSSL_MINOR_VERSION "${OPENSSL_VERSION_NUMBER}" + "^#[ ]*define[\t ]+OPENSSL_VERSION_MINOR[\t ]+([0-9]+).*" "\\1" + OPENSSL_MINOR_VERSION ${OPENSSL_VERSION_MINOR} + ) + FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" + OPENSSL_VERSION_PATCH + REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_PATCH[\t ]+([0-9]+).*" ) STRING(REGEX REPLACE - "^.*OPENSSL_VERSION_NUMBER[\t ]+0x[0-9][0-9][0-9]([0-9][0-9]).*$" "\\1" - OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}" + "^#[ ]*define[\t ]+OPENSSL_VERSION_PATCH[\t ]+([0-9]+).*" "\\1" + OPENSSL_FIX_VERSION ${OPENSSL_VERSION_PATCH} ) ENDIF() SET(OPENSSL_VERSION @@ -203,7 +211,7 @@ IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY AND CRYPTO_LIBRARY AND - OPENSSL_MAJOR_VERSION STREQUAL "1" + (OPENSSL_MAJOR_VERSION STREQUAL "1" OR OPENSSL_MAJOR_VERSION STREQUAL "3") ) SET(OPENSSL_FOUND TRUE) ELSE() --- percona-server-5.7.31-34/sql/mysqld.cc~ 2020-08-15 11:23:18.000000000 +0200 +++ percona-server-5.7.31-34/sql/mysqld.cc 2021-09-26 16:17:42.275241856 +0200 @@ -161,6 +161,7 @@ #if defined(HAVE_OPENSSL) #include +#include #endif #ifndef EMBEDDED_LIBRARY @@ -3689,15 +3689,15 @@ static int init_ssl() { #ifdef HAVE_OPENSSL - int fips_mode= FIPS_mode(); + int fips_mode = EVP_default_properties_is_fips_enabled(NULL); if (fips_mode != 0) { /* FIPS is enabled, Log warning and Disable it now */ sql_print_warning( "Percona Server cannot operate under OpenSSL FIPS mode." " Disabling FIPS."); - FIPS_mode_set(0); + EVP_set_default_properties(NULL, "fips=no"); } #if OPENSSL_VERSION_NUMBER < 0x10100000L CRYPTO_malloc_init(); #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */