Index: branches/2020Q1/databases/mysql56-client/Makefile =================================================================== --- branches/2020Q1/databases/mysql56-client/Makefile (revision 528272) +++ branches/2020Q1/databases/mysql56-client/Makefile (revision 528273) @@ -1,35 +1,35 @@ # Created by: Alex Dupre # $FreeBSD$ PORTNAME= mysql -PORTREVISION= 0 +PORTREVISION= 1 PKGNAMESUFFIX= 56-client COMMENT= Multithreaded SQL database (client) LICENSE+= LGPL21 BROKEN_sparc64= Does not build: reports unsupported compiler MASTERDIR= ${.CURDIR}/../mysql56-server PKGMESSAGE= ${.CURDIR}/pkg-message PATCHDIR= ${.CURDIR}/files PLIST= ${.CURDIR}/pkg-plist CONFLICTS_INSTALL= mysql5[0-57-9]-client-* \ mysql[0-46-9][0-9]-client-* \ mariadb[0-9][0-9]-client-* \ percona[0-9][0-9]-client-* CMAKE_ARGS+= -DWITHOUT_SERVER=1 USE_LDCONFIG+= ${PREFIX}/lib/mysql MMAN1= comp_err.1 msql2mysql.1 mysql.1 mysql_config.1 mysql_config_editor.1 mysql_find_rows.1 \ mysql_waitpid.1 mysqlaccess.1 mysqladmin.1 mysqlbinlog.1 \ mysqlcheck.1 mysqldump.1 mysqlimport.1 mysqlshow.1 mysqlslap.1 CLIENT_ONLY= yes .include "${MASTERDIR}/Makefile" Index: branches/2020Q1/databases/mysql56-client/files/patch-cmake_ssl.cmake =================================================================== --- branches/2020Q1/databases/mysql56-client/files/patch-cmake_ssl.cmake (revision 528272) +++ branches/2020Q1/databases/mysql56-client/files/patch-cmake_ssl.cmake (revision 528273) @@ -1,11 +1,25 @@ ---- cmake/ssl.cmake.orig 2016-11-28 13:36:22 UTC +--- cmake/ssl.cmake.orig 2019-11-26 16:53:45 UTC +++ cmake/ssl.cmake -@@ -176,7 +176,7 @@ MACRO (MYSQL_CHECK_SSL) +@@ -189,13 +189,20 @@ MACRO (MYSQL_CHECK_SSL) + OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}" + ) + ENDIF() +- IF("${OPENSSL_MAJOR_VERSION}.${OPENSSL_MINOR_VERSION}.${OPENSSL_FIX_VERSION}" VERSION_GREATER "1.1.0") ++ CHECK_SYMBOL_EXISTS(TLS1_3_VERSION "openssl/tls1.h" HAVE_TLS1_3_VERSION) ++ IF(HAVE_TLS1_3_VERSION) + ADD_DEFINITIONS(-DHAVE_TLSv13) + ENDIF() IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY AND CRYPTO_LIBRARY AND - OPENSSL_MAJOR_VERSION STREQUAL "1" + OPENSSL_MAJOR_VERSION VERSION_GREATER_EQUAL "1" ++ ) ++ SET(OPENSSL_FOUND TRUE) ++ ELSEIF(OPENSSL_INCLUDE_DIR AND ++ OPENSSL_LIBRARY AND ++ CRYPTO_LIBRARY AND ++ OPENSSL_MAJOR_VERSION STREQUAL "2" ) SET(OPENSSL_FOUND TRUE) ELSE() Index: branches/2020Q1/databases/mysql56-client/files/patch-mysys__ssl_my__aes__openssl.cc =================================================================== --- branches/2020Q1/databases/mysql56-client/files/patch-mysys__ssl_my__aes__openssl.cc (nonexistent) +++ branches/2020Q1/databases/mysql56-client/files/patch-mysys__ssl_my__aes__openssl.cc (revision 528273) @@ -0,0 +1,74 @@ +--- mysys_ssl/my_aes_openssl.cc.orig 2019-11-26 16:53:45 UTC ++++ mysys_ssl/my_aes_openssl.cc +@@ -120,7 +120,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + const unsigned char *key, uint32 key_length, + enum my_aes_opmode mode, const unsigned char *iv) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX stack_ctx; + EVP_CIPHER_CTX *ctx= &stack_ctx; + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ +@@ -135,7 +135,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + if (!ctx || !cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) + return MY_AES_BAD_DATA; + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_init(ctx); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + +@@ -148,7 +148,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + if (!EVP_EncryptFinal(ctx, dest + u_len, &f_len)) + goto aes_error; /* Error */ + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); +@@ -158,7 +158,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + aes_error: + /* need to explicitly clean up the error if we want to ignore it */ + ERR_clear_error(); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); +@@ -172,7 +172,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + const unsigned char *key, uint32 key_length, + enum my_aes_opmode mode, const unsigned char *iv) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX stack_ctx; + EVP_CIPHER_CTX *ctx= &stack_ctx; + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ +@@ -188,7 +188,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + if (!ctx || !cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) + return MY_AES_BAD_DATA; + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_init(ctx); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + +@@ -201,7 +201,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + if (!EVP_DecryptFinal_ex(ctx, dest + u_len, &f_len)) + goto aes_error; /* Error */ + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); +@@ -211,7 +211,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + aes_error: + /* need to explicitly clean up the error if we want to ignore it */ + ERR_clear_error(); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); Property changes on: branches/2020Q1/databases/mysql56-client/files/patch-mysys__ssl_my__aes__openssl.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-client/files/patch-sql-common_client.c =================================================================== --- branches/2020Q1/databases/mysql56-client/files/patch-sql-common_client.c (nonexistent) +++ branches/2020Q1/databases/mysql56-client/files/patch-sql-common_client.c (revision 528273) @@ -0,0 +1,15 @@ +--- sql-common/client.c.orig 2019-11-26 16:53:45 UTC ++++ sql-common/client.c +@@ -1980,7 +1980,11 @@ static int ssl_verify_server_cert(Vio *vio, const char + goto error; + } + +- cn= (char *) ASN1_STRING_data(cn_asn1); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) ++ cn= (const char *) ASN1_STRING_data(cn_asn1); ++#else ++ cn= (const char *) ASN1_STRING_get0_data(cn_asn1); ++#endif + + // There should not be any NULL embedded in the CN + if ((size_t)ASN1_STRING_length(cn_asn1) != strlen(cn)) Property changes on: branches/2020Q1/databases/mysql56-client/files/patch-sql-common_client.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-client/files/patch-sql_mysqld.cc =================================================================== --- branches/2020Q1/databases/mysql56-client/files/patch-sql_mysqld.cc (nonexistent) +++ branches/2020Q1/databases/mysql56-client/files/patch-sql_mysqld.cc (revision 528273) @@ -0,0 +1,65 @@ +--- sql/mysqld.cc.orig 2019-11-26 16:53:45 UTC ++++ sql/mysqld.cc +@@ -1258,7 +1258,7 @@ char *opt_ssl_ca= NULL, *opt_ssl_capath= NULL, *opt_ss + *opt_ssl_crlpath= NULL; + + #ifdef HAVE_OPENSSL +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + #include + typedef struct CRYPTO_dynlock_value + { +@@ -2029,7 +2029,7 @@ static void clean_up_mutexes() + mysql_mutex_destroy(&LOCK_connection_count); + #ifdef HAVE_OPENSSL + mysql_mutex_destroy(&LOCK_des_key_file); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + for (int i= 0; i < CRYPTO_num_locks(); ++i) + mysql_rwlock_destroy(&openssl_stdlocks[i].lock); + OPENSSL_free(openssl_stdlocks); +@@ -2768,7 +2768,7 @@ bool one_thread_per_connection_end(THD *thd, bool bloc + + // Clean up errors now, before possibly waiting for a new connection. + #ifndef EMBEDDED_LIBRARY +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + ERR_remove_thread_state(0); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + #endif +@@ -4252,7 +4252,7 @@ static int init_thread_environment() + #ifdef HAVE_OPENSSL + mysql_mutex_init(key_LOCK_des_key_file, + &LOCK_des_key_file, MY_MUTEX_INIT_FAST); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + openssl_stdlocks= (openssl_lock_t*) OPENSSL_malloc(CRYPTO_num_locks() * + sizeof(openssl_lock_t)); + for (int i= 0; i < CRYPTO_num_locks(); ++i) +@@ -4301,7 +4301,7 @@ static int init_thread_environment() + OpenSSL 1.1 supports native platform threads, + so we don't need the following callback functions. + */ +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + + static unsigned long openssl_id_function() + { +@@ -4375,7 +4375,7 @@ static void openssl_lock(int mode, openssl_lock_t *loc + static int init_ssl() + { + #ifdef HAVE_OPENSSL +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + CRYPTO_malloc_init(); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + OPENSSL_malloc_init(); +@@ -4392,7 +4392,7 @@ static int init_ssl() + opt_ssl_cipher, &error, + opt_ssl_crl, opt_ssl_crlpath); + DBUG_PRINT("info",("ssl_acceptor_fd: 0x%lx", (long) ssl_acceptor_fd)); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + ERR_remove_thread_state(0); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + if (!ssl_acceptor_fd) Property changes on: branches/2020Q1/databases/mysql56-client/files/patch-sql_mysqld.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-client/files/patch-vio_vio.c =================================================================== --- branches/2020Q1/databases/mysql56-client/files/patch-vio_vio.c (nonexistent) +++ branches/2020Q1/databases/mysql56-client/files/patch-vio_vio.c (revision 528273) @@ -0,0 +1,11 @@ +--- vio/vio.c.orig 2019-11-26 16:53:45 UTC ++++ vio/vio.c +@@ -394,7 +394,7 @@ void vio_end(void) + { + #if defined(HAVE_OPENSSL) + // This one is needed on the client side +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + ERR_remove_thread_state(0); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + ERR_free_strings(); Property changes on: branches/2020Q1/databases/mysql56-client/files/patch-vio_vio.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-client/files/patch-vio_viossl.c =================================================================== --- branches/2020Q1/databases/mysql56-client/files/patch-vio_viossl.c (nonexistent) +++ branches/2020Q1/databases/mysql56-client/files/patch-vio_viossl.c (revision 528273) @@ -0,0 +1,11 @@ +--- vio/viossl.c.orig 2019-11-26 16:53:45 UTC ++++ vio/viossl.c +@@ -403,7 +403,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, + for (j = 0; j < n; j++) + { + SSL_COMP *c = sk_SSL_COMP_value(ssl_comp_methods, j); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + DBUG_PRINT("info", (" %d: %s\n", c->id, c->name)); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + DBUG_PRINT("info", (" %d: %s\n", SSL_COMP_get_id(c), SSL_COMP_get0_name(c))); Property changes on: branches/2020Q1/databases/mysql56-client/files/patch-vio_viossl.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-client/files/patch-vio_viosslfactories.c =================================================================== --- branches/2020Q1/databases/mysql56-client/files/patch-vio_viosslfactories.c (nonexistent) +++ branches/2020Q1/databases/mysql56-client/files/patch-vio_viosslfactories.c (revision 528273) @@ -0,0 +1,20 @@ +--- vio/viosslfactories.c.orig 2019-11-26 16:53:45 UTC ++++ vio/viosslfactories.c +@@ -91,7 +91,7 @@ static DH *get_dh2048(void) + DH_free(dh); + return NULL; + } +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + dh->p= p; + dh->g= g; + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ +@@ -250,7 +250,7 @@ new_VioSSLFd(const char *key_file, const char *cert_fi + DBUG_RETURN(0); + + if (!(ssl_fd->ssl_context= SSL_CTX_new(is_client ? +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + SSLv23_client_method() : + SSLv23_server_method() + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ Property changes on: branches/2020Q1/databases/mysql56-client/files/patch-vio_viosslfactories.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-server/Makefile =================================================================== --- branches/2020Q1/databases/mysql56-server/Makefile (revision 528272) +++ branches/2020Q1/databases/mysql56-server/Makefile (revision 528273) @@ -1,162 +1,162 @@ # Created by: Alex Dupre # $FreeBSD$ PORTNAME?= mysql PORTVERSION= 5.6.47 -PORTREVISION?= 0 +PORTREVISION?= 1 CATEGORIES= databases MASTER_SITES= MYSQL/MySQL-5.6 PKGNAMESUFFIX?= 56-server MAINTAINER= mmokhi@FreeBSD.org COMMENT?= Multithreaded SQL database (server) LICENSE= GPLv2 SLAVEDIRS= databases/mysql56-client USES= bison:build cmake:noninja compiler:c11 compiler:c++11-lib \ cpe libedit localbase perl5 shebangfix ssl USE_PERL5= run MY_DBDIR= /var/db/mysql MY_SECDIR= /var/db/mysql_secure MY_TMPDIR= /var/db/mysql_tmpdir LIB_DEPENDS+= libevent.so:devel/libevent \ liblz4.so:archivers/liblz4 CMAKE_BUILD_TYPE= Release CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \ -DINSTALL_LDCONFIGDIR="${LOCALBASE}/libdata/ldconfig" \ -DINSTALL_PKGCONFIGDIR="${LOCALBASE}/libdata/pkgconfig" \ -DINSTALL_DOCDIR="share/doc/mysql" \ -DINSTALL_DOCREADMEDIR="share/doc/mysql" \ -DINSTALL_INCLUDEDIR="include/mysql" \ -DINSTALL_INFODIR="${INFO_PATH}" \ -DINSTALL_LIBDIR="lib/mysql" \ -DINSTALL_MANDIR="man" \ -DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \ -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring" \ -DINSTALL_MYSQLSHAREDIR="share/mysql" \ -DINSTALL_MYSQLTESTDIR="share/mysql/tests" \ -DINSTALL_PLUGINDIR="lib/mysql/plugin" \ -DINSTALL_SBINDIR="libexec" \ -DINSTALL_SCRIPTDIR="bin" \ -DINSTALL_SECURE_FILE_PRIVDIR="${MY_SECDIR}" \ -DINSTALL_SHAREDIR="share" \ -DINSTALL_SQLBENCHDIR="share/mysql" \ -DINSTALL_SUPPORTFILESDIR="share/mysql" \ -DMYSQL_KEYRINGDIR="${ETCDIR}/keyring" \ -DWITH_BOOST="${WRKSRC}/boost" \ -DWITH_EDITLINE=system \ -DWITH_LIBEVENT=system \ -DWITH_LZ4=system \ -DWITH_ZLIB=system \ -DWITH_SSL=${OPENSSLBASE} \ -DCRYPTO_LIBRARY=${OPENSSLLIB}/libcrypto.so \ -DOPENSSL_LIBRARY=${OPENSSLLIB}/libssl.so \ -DINSTALL_MYSQLTESTDIR=0 SHEBANG_FILES= scripts/*.pl* scripts/*.sh .ifdef USE_MYSQL .error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again. .endif SUB_LIST= MY_DBDIR=${MY_DBDIR} \ MY_SECDIR=${MY_SECDIR} \ MY_TMPDIR=${MY_TMPDIR} PLIST_SUB= MY_DBDIR=${MY_DBDIR} \ MY_SECDIR=${MY_SECDIR} \ MY_TMPDIR=${MY_TMPDIR} # MySQL-Server part .if !defined(CLIENT_ONLY) USES+= mysql:56 CONFLICTS_INSTALL= mysql5[0-57-9]-server-* \ mysql[0-46-9][0-9]-server-* \ mysqlwsrep* \ mariadb[0-9][0-9]-server-* \ percona[0-9][0-9]-server-* USE_RC_SUBR= mysql-server SUB_FILES= my.cnf.sample USERS= mysql GROUPS= mysql USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin MMAN1= my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 \ mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 \ mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 \ mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql_zap.1 mysqlbug.1 \ mysqld_multi.1 mysqld_safe.1 mysqldumpslow.1 mysqlhotcopy.1 mysqlman.1 \ mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1 CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" OPTIONS_GROUP= STORAGE OPTIONS_GROUP_STORAGE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA OPTIONS_SUB= YES STORAGE_DESC= Permissible "Storage Engines" (to compile statically into the server) ARCHIVE_DESC= Compile "Archive Storage" statically in server BLACKHOLE_DESC= Compile "Blackhole Storage" statically in server EXAMPLE_DESC= Compile "Example Storage" statically in server FEDERATED_DESC= Compile "Federated Storage" statically in server INNOBASE_DESC= Compile "InnoDB Storage" statically in server PARTITION_DESC= Compile "Partitioning support Storage" statically in server PERFSCHEMA_DESC= Compile "Performance Schema Storage" statically in server ARCHIVE_CMAKE_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1 BLACKHOLE_CMAKE_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1 EXAMPLE_CMAKE_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1 FEDERATED_CMAKE_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1 INNOBASE_CMAKE_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1 PARTITION_CMAKE_ON= -DWITH_PARTITION_STORAGE_ENGINE=1 PERFSCHEMA_CMAKE_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 OPTIONS_GROUP+= FEATURES OPTIONS_GROUP_FEATURES= PERFSCHM FEATURES_DESC= Default features knobs PERFSCHM_DESC= Enable "Performance Schema" by default (High RAM usage) OPTIONS_DEFAULT+= PERFSCHM PERFSCHM_SUB_LIST+= PERFSCHEMRC="" PERFSCHM_SUB_LIST_OFF+= PERFSCHEMRC="--skip-performance-schema" FEDERATED_SUB_LIST+= FEDER="--federated" FEDERATED_SUB_LIST_OFF+= FEDER="" .endif .include .if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1200057 SUB_LIST+= LEGACY_LIMITS="@comment " MODERN_LIMITS="" .else SUB_LIST+= LEGACY_LIMITS="" MODERN_LIMITS="@comment " .endif .include post-patch: @${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt .if !defined(CLIENT_ONLY) post-install: ${MKDIR} ${STAGEDIR}${ETCDIR} ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample ${STAGEDIR}${ETCDIR}/my.cnf.sample ${MKDIR} ${STAGEDIR}${ETCDIR}/keyring ${MKDIR} ${STAGEDIR}${MY_SECDIR} ${MKDIR} ${STAGEDIR}${MY_TMPDIR} .endif .if ${ARCH} == armv6 || ${ARCH} == armv7 EXTRA_PATCHES+= ${FILESDIR}/extra-patch-config.h.cmake .endif .include Index: branches/2020Q1/databases/mysql56-server/files/patch-cmake_ssl.cmake =================================================================== --- branches/2020Q1/databases/mysql56-server/files/patch-cmake_ssl.cmake (revision 528272) +++ branches/2020Q1/databases/mysql56-server/files/patch-cmake_ssl.cmake (revision 528273) @@ -1,11 +1,25 @@ ---- cmake/ssl.cmake.orig 2016-11-28 13:36:22 UTC +--- cmake/ssl.cmake.orig 2019-11-26 16:53:45 UTC +++ cmake/ssl.cmake -@@ -176,7 +176,7 @@ MACRO (MYSQL_CHECK_SSL) +@@ -189,13 +189,20 @@ MACRO (MYSQL_CHECK_SSL) + OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}" + ) + ENDIF() +- IF("${OPENSSL_MAJOR_VERSION}.${OPENSSL_MINOR_VERSION}.${OPENSSL_FIX_VERSION}" VERSION_GREATER "1.1.0") ++ CHECK_SYMBOL_EXISTS(TLS1_3_VERSION "openssl/tls1.h" HAVE_TLS1_3_VERSION) ++ IF(HAVE_TLS1_3_VERSION) + ADD_DEFINITIONS(-DHAVE_TLSv13) + ENDIF() IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY AND CRYPTO_LIBRARY AND - OPENSSL_MAJOR_VERSION STREQUAL "1" + OPENSSL_MAJOR_VERSION VERSION_GREATER_EQUAL "1" ++ ) ++ SET(OPENSSL_FOUND TRUE) ++ ELSEIF(OPENSSL_INCLUDE_DIR AND ++ OPENSSL_LIBRARY AND ++ CRYPTO_LIBRARY AND ++ OPENSSL_MAJOR_VERSION STREQUAL "2" ) SET(OPENSSL_FOUND TRUE) ELSE() Index: branches/2020Q1/databases/mysql56-server/files/patch-mysys__ssl_my__aes__openssl.cc =================================================================== --- branches/2020Q1/databases/mysql56-server/files/patch-mysys__ssl_my__aes__openssl.cc (nonexistent) +++ branches/2020Q1/databases/mysql56-server/files/patch-mysys__ssl_my__aes__openssl.cc (revision 528273) @@ -0,0 +1,74 @@ +--- mysys_ssl/my_aes_openssl.cc.orig 2019-11-26 16:53:45 UTC ++++ mysys_ssl/my_aes_openssl.cc +@@ -120,7 +120,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + const unsigned char *key, uint32 key_length, + enum my_aes_opmode mode, const unsigned char *iv) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX stack_ctx; + EVP_CIPHER_CTX *ctx= &stack_ctx; + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ +@@ -135,7 +135,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + if (!ctx || !cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) + return MY_AES_BAD_DATA; + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_init(ctx); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + +@@ -148,7 +148,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + if (!EVP_EncryptFinal(ctx, dest + u_len, &f_len)) + goto aes_error; /* Error */ + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); +@@ -158,7 +158,7 @@ int my_aes_encrypt(const unsigned char *source, uint32 + aes_error: + /* need to explicitly clean up the error if we want to ignore it */ + ERR_clear_error(); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); +@@ -172,7 +172,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + const unsigned char *key, uint32 key_length, + enum my_aes_opmode mode, const unsigned char *iv) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX stack_ctx; + EVP_CIPHER_CTX *ctx= &stack_ctx; + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ +@@ -188,7 +188,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + if (!ctx || !cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) + return MY_AES_BAD_DATA; + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_init(ctx); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + +@@ -201,7 +201,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + if (!EVP_DecryptFinal_ex(ctx, dest + u_len, &f_len)) + goto aes_error; /* Error */ + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); +@@ -211,7 +211,7 @@ int my_aes_decrypt(const unsigned char *source, uint32 + aes_error: + /* need to explicitly clean up the error if we want to ignore it */ + ERR_clear_error(); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + EVP_CIPHER_CTX_cleanup(ctx); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_CIPHER_CTX_free(ctx); Property changes on: branches/2020Q1/databases/mysql56-server/files/patch-mysys__ssl_my__aes__openssl.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-server/files/patch-sql-common_client.c =================================================================== --- branches/2020Q1/databases/mysql56-server/files/patch-sql-common_client.c (nonexistent) +++ branches/2020Q1/databases/mysql56-server/files/patch-sql-common_client.c (revision 528273) @@ -0,0 +1,15 @@ +--- sql-common/client.c.orig 2019-11-26 16:53:45 UTC ++++ sql-common/client.c +@@ -1980,7 +1980,11 @@ static int ssl_verify_server_cert(Vio *vio, const char + goto error; + } + +- cn= (char *) ASN1_STRING_data(cn_asn1); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) ++ cn= (const char *) ASN1_STRING_data(cn_asn1); ++#else ++ cn= (const char *) ASN1_STRING_get0_data(cn_asn1); ++#endif + + // There should not be any NULL embedded in the CN + if ((size_t)ASN1_STRING_length(cn_asn1) != strlen(cn)) Property changes on: branches/2020Q1/databases/mysql56-server/files/patch-sql-common_client.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-server/files/patch-sql_mysqld.cc =================================================================== --- branches/2020Q1/databases/mysql56-server/files/patch-sql_mysqld.cc (nonexistent) +++ branches/2020Q1/databases/mysql56-server/files/patch-sql_mysqld.cc (revision 528273) @@ -0,0 +1,65 @@ +--- sql/mysqld.cc.orig 2019-11-26 16:53:45 UTC ++++ sql/mysqld.cc +@@ -1258,7 +1258,7 @@ char *opt_ssl_ca= NULL, *opt_ssl_capath= NULL, *opt_ss + *opt_ssl_crlpath= NULL; + + #ifdef HAVE_OPENSSL +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + #include + typedef struct CRYPTO_dynlock_value + { +@@ -2029,7 +2029,7 @@ static void clean_up_mutexes() + mysql_mutex_destroy(&LOCK_connection_count); + #ifdef HAVE_OPENSSL + mysql_mutex_destroy(&LOCK_des_key_file); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + for (int i= 0; i < CRYPTO_num_locks(); ++i) + mysql_rwlock_destroy(&openssl_stdlocks[i].lock); + OPENSSL_free(openssl_stdlocks); +@@ -2768,7 +2768,7 @@ bool one_thread_per_connection_end(THD *thd, bool bloc + + // Clean up errors now, before possibly waiting for a new connection. + #ifndef EMBEDDED_LIBRARY +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + ERR_remove_thread_state(0); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + #endif +@@ -4252,7 +4252,7 @@ static int init_thread_environment() + #ifdef HAVE_OPENSSL + mysql_mutex_init(key_LOCK_des_key_file, + &LOCK_des_key_file, MY_MUTEX_INIT_FAST); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + openssl_stdlocks= (openssl_lock_t*) OPENSSL_malloc(CRYPTO_num_locks() * + sizeof(openssl_lock_t)); + for (int i= 0; i < CRYPTO_num_locks(); ++i) +@@ -4301,7 +4301,7 @@ static int init_thread_environment() + OpenSSL 1.1 supports native platform threads, + so we don't need the following callback functions. + */ +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + + static unsigned long openssl_id_function() + { +@@ -4375,7 +4375,7 @@ static void openssl_lock(int mode, openssl_lock_t *loc + static int init_ssl() + { + #ifdef HAVE_OPENSSL +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + CRYPTO_malloc_init(); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + OPENSSL_malloc_init(); +@@ -4392,7 +4392,7 @@ static int init_ssl() + opt_ssl_cipher, &error, + opt_ssl_crl, opt_ssl_crlpath); + DBUG_PRINT("info",("ssl_acceptor_fd: 0x%lx", (long) ssl_acceptor_fd)); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + ERR_remove_thread_state(0); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + if (!ssl_acceptor_fd) Property changes on: branches/2020Q1/databases/mysql56-server/files/patch-sql_mysqld.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-server/files/patch-vio_vio.c =================================================================== --- branches/2020Q1/databases/mysql56-server/files/patch-vio_vio.c (nonexistent) +++ branches/2020Q1/databases/mysql56-server/files/patch-vio_vio.c (revision 528273) @@ -0,0 +1,11 @@ +--- vio/vio.c.orig 2019-11-26 16:53:45 UTC ++++ vio/vio.c +@@ -394,7 +394,7 @@ void vio_end(void) + { + #if defined(HAVE_OPENSSL) + // This one is needed on the client side +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + ERR_remove_thread_state(0); + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + ERR_free_strings(); Property changes on: branches/2020Q1/databases/mysql56-server/files/patch-vio_vio.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-server/files/patch-vio_viossl.c =================================================================== --- branches/2020Q1/databases/mysql56-server/files/patch-vio_viossl.c (nonexistent) +++ branches/2020Q1/databases/mysql56-server/files/patch-vio_viossl.c (revision 528273) @@ -0,0 +1,11 @@ +--- vio/viossl.c.orig 2019-11-26 16:53:45 UTC ++++ vio/viossl.c +@@ -403,7 +403,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, + for (j = 0; j < n; j++) + { + SSL_COMP *c = sk_SSL_COMP_value(ssl_comp_methods, j); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + DBUG_PRINT("info", (" %d: %s\n", c->id, c->name)); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + DBUG_PRINT("info", (" %d: %s\n", SSL_COMP_get_id(c), SSL_COMP_get0_name(c))); Property changes on: branches/2020Q1/databases/mysql56-server/files/patch-vio_viossl.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1/databases/mysql56-server/files/patch-vio_viosslfactories.c =================================================================== --- branches/2020Q1/databases/mysql56-server/files/patch-vio_viosslfactories.c (nonexistent) +++ branches/2020Q1/databases/mysql56-server/files/patch-vio_viosslfactories.c (revision 528273) @@ -0,0 +1,20 @@ +--- vio/viosslfactories.c.orig 2019-11-26 16:53:45 UTC ++++ vio/viosslfactories.c +@@ -91,7 +91,7 @@ static DH *get_dh2048(void) + DH_free(dh); + return NULL; + } +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + dh->p= p; + dh->g= g; + #endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ +@@ -250,7 +250,7 @@ new_VioSSLFd(const char *key_file, const char *cert_fi + DBUG_RETURN(0); + + if (!(ssl_fd->ssl_context= SSL_CTX_new(is_client ? +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + SSLv23_client_method() : + SSLv23_server_method() + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ Property changes on: branches/2020Q1/databases/mysql56-server/files/patch-vio_viosslfactories.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2020Q1 =================================================================== --- branches/2020Q1 (revision 528272) +++ branches/2020Q1 (revision 528273) Property changes on: branches/2020Q1 ___________________________________________________________________ Modified: svn:mergeinfo ## -0,0 +0,1 ## Merged /head:r528272