Index: head/databases/mysql57-client/files/patch-include_my_openssl.h =================================================================== --- head/databases/mysql57-client/files/patch-include_my_openssl.h (nonexistent) +++ head/databases/mysql57-client/files/patch-include_my_openssl.h (revision 533909) @@ -0,0 +1,11 @@ +--- include/my_openssl.h.orig 2020-03-23 17:35:17 UTC ++++ include/my_openssl.h +@@ -51,7 +51,7 @@ extern "C" { + */ + static inline int mysql_OPENSSL_init() + { +-#if defined(HAVE_STATIC_OPENSSL) ++#if defined(HAVE_STATIC_OPENSSL) && !defined(LIBRESSL_VERSION_NUMBER) + return OPENSSL_init_crypto(OPENSSL_INIT_NO_ATEXIT, NULL); + #else + return SSL_library_init(); Property changes on: head/databases/mysql57-client/files/patch-include_my_openssl.h ___________________________________________________________________ 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: head/databases/mysql57-client/files/patch-sql_auth_sha2_password_common.cc =================================================================== --- head/databases/mysql57-client/files/patch-sql_auth_sha2_password_common.cc (nonexistent) +++ head/databases/mysql57-client/files/patch-sql_auth_sha2_password_common.cc (revision 533909) @@ -0,0 +1,12 @@ +--- sql/auth/sha2_password_common.cc ++++ sql/auth/sha2_password_common.cc +@@ -116,7 +116,8 @@ bool SHA256_digest::retrieve_digest(unsigned char *digest, + DBUG_RETURN(true); + } + m_ok= EVP_DigestFinal_ex(md_context, m_digest, NULL); +-#if defined(HAVE_WOLFSSL) || OPENSSL_VERSION_NUMBER < 0x10100000L ++#if defined(HAVE_WOLFSSL) || OPENSSL_VERSION_NUMBER < 0x10100000L || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x02090000fL) + EVP_MD_CTX_cleanup(md_context); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_MD_CTX_reset(md_context); Property changes on: head/databases/mysql57-client/files/patch-sql_auth_sha2_password_common.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: head/databases/mysql57-client/files/patch-vio_viosslfactories.c =================================================================== --- head/databases/mysql57-client/files/patch-vio_viosslfactories.c (nonexistent) +++ head/databases/mysql57-client/files/patch-vio_viosslfactories.c (revision 533909) @@ -0,0 +1,35 @@ +--- vio/viosslfactories.c ++++ vio/viosslfactories.c +@@ -123,21 +123,19 @@ static DH *get_dh2048(void) + DH *dh; + if ((dh=DH_new())) + { +- BIGNUM *p= BN_bin2bn(dh2048_p, sizeof(dh2048_p), NULL); +- BIGNUM *g= BN_bin2bn(dh2048_g, sizeof(dh2048_g), NULL); +- if (!p || !g +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L +- || !DH_set0_pqg(dh, p, NULL, g) +-#endif /* OPENSSL_VERSION_NUMBER >= 0x10100000L */ +- ) { +- /* DH_free() will free 'p' and 'g' at once. */ ++ BIGNUM *p = BN_bin2bn(dh2048_p,sizeof(dh2048_p), NULL); ++ BIGNUM *g = BN_bin2bn(dh2048_g,sizeof(dh2048_g), NULL); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) ++ dh->p=p; ++ dh->g=g; ++ if (! dh->p || ! dh->g) ++#else ++ if (!DH_set0_pqg(dh, p, NULL, g)) ++#endif ++ { + DH_free(dh); +- return NULL; ++ dh = NULL; + } +-#if OPENSSL_VERSION_NUMBER < 0x10100000L +- dh->p= p; +- dh->g= g; +-#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + } + return(dh); + } Property changes on: head/databases/mysql57-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: head/databases/mysql57-server/Makefile =================================================================== --- head/databases/mysql57-server/Makefile (revision 533908) +++ head/databases/mysql57-server/Makefile (revision 533909) @@ -1,184 +1,184 @@ # Created by: Mahdi Mokhtari # $FreeBSD$ PORTNAME?= mysql PORTVERSION= 5.7.30 -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= databases MASTER_SITES= MYSQL/MySQL-5.7 PKGNAMESUFFIX?= 57-server DISTNAME= ${PORTNAME}-boost-${PORTVERSION} MAINTAINER= joneum@FreeBSD.org COMMENT?= Multithreaded SQL database (server) LICENSE= GPLv2 WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} SLAVEDIRS= databases/mysql57-client USES= bison:build cmake:noninja compiler:c11 compiler:c++11-lib \ cpe groff:run 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+= libcurl.so:ftp/curl \ libevent.so:devel/libevent \ liblz4.so:archivers/liblz4 \ libprotobuf.so:devel/protobuf 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_SUPPORTFILESDIR="share/mysql" \ -DMYSQL_KEYRINGDIR="${ETCDIR}/keyring" \ -DWITH_BOOST="${WRKSRC}/boost" \ -DWITH_EDITLINE=system \ -DWITH_LIBEVENT=system \ -DWITH_LZ4=system \ -DWITH_ZLIB=system \ -DWITH_PROTOBUF=system \ -DWITH_CURL=system \ -DINSTALL_MYSQLTESTDIR=0 \ -DWITH_DEBUG=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} OPTIONS_SUB= YES # MySQL-Server part .if !defined(CLIENT_ONLY) USES+= mysql:57 CONFLICTS_INSTALL= mysql5[0-68-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_CXXSTD= c++11 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 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 FEATURES_DESC= Default features knobs OPTIONS_GROUP_FEATURES= PERFSCHM 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="" # issue 220865: Currently there's no source to be built with server-side support. # But this keeps the pkg-plist not overlaping CMAKE_ARGS+= -DWITH_AUTHENTICATION_LDAP=0 .endif .include .if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1200057 SUB_LIST+= LEGACY_LIMITS="@comment " MODERN_LIMITS="" .else SUB_LIST+= LEGACY_LIMITS="" MODERN_LIMITS="@comment " .endif .include .if ${SSL_DEFAULT} == base CMAKE_ARGS+= -DWITH_SSL=system .else CMAKE_ARGS+= -DWITH_SSL=${OPENSSLBASE} .endif .if ${CHOSEN_COMPILER_TYPE} == gcc CXXFLAGS+= -fpermissive .endif post-extract: @${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h post-patch: @${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt # issue 220865: MySQL developers forgot that FreeBSD != Linux @${REINPLACE_CMD} -e 's|%%FREEBSD_LOCAL_LIB%%|${LOCALBASE}/lib|g' \ ${WRKSRC}/configure.cmake .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 .include Index: head/databases/mysql57-server/files/patch-include_my_openssl.h =================================================================== --- head/databases/mysql57-server/files/patch-include_my_openssl.h (nonexistent) +++ head/databases/mysql57-server/files/patch-include_my_openssl.h (revision 533909) @@ -0,0 +1,11 @@ +--- include/my_openssl.h.orig 2020-03-23 17:35:17 UTC ++++ include/my_openssl.h +@@ -51,7 +51,7 @@ extern "C" { + */ + static inline int mysql_OPENSSL_init() + { +-#if defined(HAVE_STATIC_OPENSSL) ++#if defined(HAVE_STATIC_OPENSSL) && !defined(LIBRESSL_VERSION_NUMBER) + return OPENSSL_init_crypto(OPENSSL_INIT_NO_ATEXIT, NULL); + #else + return SSL_library_init(); Property changes on: head/databases/mysql57-server/files/patch-include_my_openssl.h ___________________________________________________________________ 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: head/databases/mysql57-server/files/patch-rapid_plugin_group_replication_libmysqlgcs_src_bindings_xcom_xcom_xcom_ssl_transport.c =================================================================== --- head/databases/mysql57-server/files/patch-rapid_plugin_group_replication_libmysqlgcs_src_bindings_xcom_xcom_xcom_ssl_transport.c (nonexistent) +++ head/databases/mysql57-server/files/patch-rapid_plugin_group_replication_libmysqlgcs_src_bindings_xcom_xcom_xcom_ssl_transport.c (revision 533909) @@ -0,0 +1,11 @@ +--- rapid/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/xcom_ssl_transport.c.orig 2020-03-23 17:35:17 UTC ++++ rapid/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/xcom_ssl_transport.c +@@ -529,7 +529,7 @@ int xcom_init_ssl(const char *server_key_file, const c + break e.g. ODBC clients (if the client also uses SSL). + */ + +-#if defined(HAVE_STATIC_OPENSSL) ++#if defined(HAVE_STATIC_OPENSSL) && !defined(LIBRESSL_VERSION_NUMBER) + OPENSSL_init_crypto(OPENSSL_INIT_NO_ATEXIT, NULL); + #else + SSL_library_init(); Property changes on: head/databases/mysql57-server/files/patch-rapid_plugin_group_replication_libmysqlgcs_src_bindings_xcom_xcom_xcom_ssl_transport.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: head/databases/mysql57-server/files/patch-sql_auth_sha2_password_common.cc =================================================================== --- head/databases/mysql57-server/files/patch-sql_auth_sha2_password_common.cc (nonexistent) +++ head/databases/mysql57-server/files/patch-sql_auth_sha2_password_common.cc (revision 533909) @@ -0,0 +1,12 @@ +--- sql/auth/sha2_password_common.cc ++++ sql/auth/sha2_password_common.cc +@@ -116,7 +116,8 @@ bool SHA256_digest::retrieve_digest(unsigned char *digest, + DBUG_RETURN(true); + } + m_ok= EVP_DigestFinal_ex(md_context, m_digest, NULL); +-#if defined(HAVE_WOLFSSL) || OPENSSL_VERSION_NUMBER < 0x10100000L ++#if defined(HAVE_WOLFSSL) || OPENSSL_VERSION_NUMBER < 0x10100000L || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x02090000fL) + EVP_MD_CTX_cleanup(md_context); + #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + EVP_MD_CTX_reset(md_context); Property changes on: head/databases/mysql57-server/files/patch-sql_auth_sha2_password_common.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: head/databases/mysql57-server/files/patch-vio_viosslfactories.c =================================================================== --- head/databases/mysql57-server/files/patch-vio_viosslfactories.c (nonexistent) +++ head/databases/mysql57-server/files/patch-vio_viosslfactories.c (revision 533909) @@ -0,0 +1,35 @@ +--- vio/viosslfactories.c ++++ vio/viosslfactories.c +@@ -123,21 +123,19 @@ static DH *get_dh2048(void) + DH *dh; + if ((dh=DH_new())) + { +- BIGNUM *p= BN_bin2bn(dh2048_p, sizeof(dh2048_p), NULL); +- BIGNUM *g= BN_bin2bn(dh2048_g, sizeof(dh2048_g), NULL); +- if (!p || !g +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L +- || !DH_set0_pqg(dh, p, NULL, g) +-#endif /* OPENSSL_VERSION_NUMBER >= 0x10100000L */ +- ) { +- /* DH_free() will free 'p' and 'g' at once. */ ++ BIGNUM *p = BN_bin2bn(dh2048_p,sizeof(dh2048_p), NULL); ++ BIGNUM *g = BN_bin2bn(dh2048_g,sizeof(dh2048_g), NULL); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) ++ dh->p=p; ++ dh->g=g; ++ if (! dh->p || ! dh->g) ++#else ++ if (!DH_set0_pqg(dh, p, NULL, g)) ++#endif ++ { + DH_free(dh); +- return NULL; ++ dh = NULL; + } +-#if OPENSSL_VERSION_NUMBER < 0x10100000L +- dh->p= p; +- dh->g= g; +-#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + } + return(dh); + } Property changes on: head/databases/mysql57-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