aboutsummaryrefslogtreecommitdiff
path: root/databases/mysql80-server
diff options
context:
space:
mode:
Diffstat (limited to 'databases/mysql80-server')
-rw-r--r--databases/mysql80-server/Makefile69
-rw-r--r--databases/mysql80-server/distinfo6
-rw-r--r--databases/mysql80-server/files/extra-patch-boost-boost_1_77_0-boost-move-detail-type_traits.hpp20
-rw-r--r--databases/mysql80-server/files/extra-patch-config.h.cmake12
-rw-r--r--databases/mysql80-server/files/my.cnf.sample.in9
-rw-r--r--databases/mysql80-server/files/mysql-server.in14
-rw-r--r--databases/mysql80-server/files/patch-CMakeLists.txt55
-rw-r--r--databases/mysql80-server/files/patch-boost_boost__1__77__0_boost_mpl_aux___integral__wrapper.hpp11
-rw-r--r--databases/mysql80-server/files/patch-client_CMakeLists.txt24
-rw-r--r--databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake8
-rw-r--r--databases/mysql80-server/files/patch-cmake_plugin.cmake4
-rw-r--r--databases/mysql80-server/files/patch-cmake_ssl.cmake36
-rw-r--r--databases/mysql80-server/files/patch-include_CMakeLists.txt176
-rw-r--r--databases/mysql80-server/files/patch-include_dh__ecdh__config.h63
-rw-r--r--databases/mysql80-server/files/patch-include_my__stacktrace.h6
-rw-r--r--databases/mysql80-server/files/patch-include_myisam.h4
-rw-r--r--databases/mysql80-server/files/patch-include_violite.h14
-rw-r--r--databases/mysql80-server/files/patch-libmysql_CMakeLists.txt49
-rw-r--r--databases/mysql80-server/files/patch-libservices_CMakeLists.txt4
-rw-r--r--databases/mysql80-server/files/patch-man_CMakeLists.txt10
-rw-r--r--databases/mysql80-server/files/patch-mysys_my__default.cc20
-rw-r--r--databases/mysql80-server/files/patch-mysys_my__kdf.cc20
-rw-r--r--databases/mysql80-server/files/patch-mysys_my__md5.cc12
-rw-r--r--databases/mysql80-server/files/patch-plugin_group__replication_libmysqlgcs_src_bindings_xcom_xcom_xcom__ssl__transport.c94
-rw-r--r--databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt4
-rw-r--r--databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc33
-rw-r--r--databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h2
-rw-r--r--databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt12
-rw-r--r--databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc10
-rw-r--r--databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc16
-rw-r--r--databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc20
-rw-r--r--databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt8
-rw-r--r--databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt4
-rw-r--r--databases/mysql80-server/files/patch-scripts_CMakeLists.txt29
-rw-r--r--databases/mysql80-server/files/patch-scripts_mysqld__safe.sh19
-rw-r--r--databases/mysql80-server/files/patch-sql-common_client.cc18
-rw-r--r--databases/mysql80-server/files/patch-sql_auth_sql__authorization.cc13
-rw-r--r--databases/mysql80-server/files/patch-sql_binlog.cc24
-rw-r--r--databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc6
-rw-r--r--databases/mysql80-server/files/patch-sql_mysqld.cc19
-rw-r--r--databases/mysql80-server/files/patch-sql_ssl__init__callback.cc36
-rw-r--r--databases/mysql80-server/files/patch-sql_sys__vars.cc49
-rw-r--r--databases/mysql80-server/files/patch-ssl__init__callback.cc20
-rw-r--r--databases/mysql80-server/files/patch-storage_innobase_include_ut0crc32.h12
-rw-r--r--databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc104
-rw-r--r--databases/mysql80-server/files/patch-utilities_CMakeLists.txt16
-rw-r--r--databases/mysql80-server/files/patch-vio_viossl.cc30
-rw-r--r--databases/mysql80-server/files/patch-vio_viosslfactories.cc60
-rw-r--r--databases/mysql80-server/pkg-descr3
-rw-r--r--databases/mysql80-server/pkg-plist62
50 files changed, 566 insertions, 803 deletions
diff --git a/databases/mysql80-server/Makefile b/databases/mysql80-server/Makefile
index 7d7bb05d58cb..a729a8155f68 100644
--- a/databases/mysql80-server/Makefile
+++ b/databases/mysql80-server/Makefile
@@ -1,8 +1,6 @@
-# Created by: Mahdi Mokhtari <mokhi64@gmail.com>
-
PORTNAME?= mysql
-PORTVERSION= 8.0.25
-PORTREVISION?= 2
+PORTVERSION= 8.0.35
+PORTREVISION?= 1
CATEGORIES= databases
MASTER_SITES= MYSQL/MySQL-8.0
PKGNAMESUFFIX?= 80-server
@@ -10,16 +8,19 @@ DISTNAME= ${PORTNAME}-boost-${PORTVERSION}${DISTVERSIONSUFFIX}
MAINTAINER= joneum@FreeBSD.org
COMMENT?= Multithreaded SQL database (server)
+WWW= https://www.mysql.com/
LICENSE= GPLv2
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}${DISTVERSIONSUFFIX}
SLAVEDIRS= databases/mysql80-client
-USES= bison:build cmake:noninja compiler:c++17-lang cpe \
- groff:run libedit localbase ncurses perl5 pkgconfig shebangfix ssl
+USES= bison:build cmake:noninja cpe groff:run libedit localbase \
+ ncurses perl5 pkgconfig shebangfix ssl
+
+CPE_VENDOR= oracle
-USE_CXXSTD= c++14
+USE_CXXSTD= c++17
USE_PERL5= run
MY_DBDIR= /var/db/mysql
@@ -30,13 +31,14 @@ LIB_DEPENDS+= libcurl.so:ftp/curl \
libevent.so:devel/libevent \
libicutu.so:devel/icu \
liblz4.so:archivers/liblz4 \
- libzstd.so:archivers/zstd \
- libprotobuf.so:devel/protobuf \
+ libfido2.so:security/libfido2 \
+ libhidapi.so:comms/hidapi \
${LIB_DEPENDS_${ARCH}}
LIB_DEPENDS_aarch64= libunwind.so:devel/libunwind
LIB_DEPENDS_amd64= libunwind.so:devel/libunwind
LIB_DEPENDS_armv7= libunwind.so:devel/libunwind
LIB_DEPENDS_i386= libunwind.so:devel/libunwind
+LIB_DEPENDS_powerpc= libunwind.so:devel/libunwind
LIB_DEPENDS_powerpc64= libunwind.so:devel/libunwind
LIB_DEPENDS_powerpc64le= libunwind.so:devel/libunwind
@@ -46,11 +48,13 @@ BUILD_DEPENDS_aarch64= libunwind>0:devel/libunwind
BUILD_DEPENDS_amd64= libunwind>0:devel/libunwind
BUILD_DEPENDS_armv7= libunwind>0:devel/libunwind
BUILD_DEPENDS_i386= libunwind>0:devel/libunwind
+BUILD_DEPENDS_powerpc= libunwind>0:devel/libunwind
BUILD_DEPENDS_powerpc64= libunwind>0:devel/libunwind
BUILD_DEPENDS_powerpc64le= libunwind>0:devel/libunwind
CMAKE_BUILD_TYPE= Release
-CFLAGS+= -fPIC -DNDEBUG -malign-double
+CFLAGS+= -fPIC
+CFLAGS_aarch64?= -march=armv8-a+crc+crypto
CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \
-DINSTALL_LDCONFIGDIR="${LOCALBASE}/libdata/ldconfig" \
@@ -60,7 +64,8 @@ CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \
-DINSTALL_INCLUDEDIR="include/mysql" \
-DINSTALL_INFODIR="${INFO_PATH}" \
-DINSTALL_LIBDIR="lib/mysql" \
- -DINSTALL_MANDIR="man" \
+ -DINSTALL_PRIV_LIBDIR="lib/mysql/private" \
+ -DINSTALL_MANDIR="share/man" \
-DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \
-DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring" \
-DINSTALL_MYSQLSHAREDIR="share/mysql" \
@@ -79,10 +84,10 @@ CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \
-DWITH_LZ4=system \
-DWITH_ICU=system \
-DWITH_CURL=system \
- -DWITH_ZLIB=system \
- -DWITH_ZSTD=system \
- -DWITH_PROTOBUF=system \
- -DWITH_SSL=${OPENSSLBASE} \
+ -DWITH_ZSTD=bundled \
+ -DWITH_PROTOBUF=bundled \
+ -DWITH_SSL=system \
+ -DWITH_AUTHENTICATION_FIDO=1 \
-DBUILD_BUNDLED_ZLIB=0 \
-DBUILD_BUNDLED_LZ4=0
@@ -113,11 +118,10 @@ PLIST_SUB= MY_DBDIR=${MY_DBDIR} \
.if !defined(CLIENT_ONLY)
USES+= mysql:80
-CONFLICTS_INSTALL= mysql8[1-9]-server-* \
- mysql[0-79][0-9]-server-* \
- mysqlwsrep* \
- mariadb[0-9][0-9]-server-* \
- percona[0-9][0-9]-server-*
+CONFLICTS_INSTALL= mysql*-server \
+ mysqlwsrep*-server \
+ mariadb*-server \
+ percona*-server
USE_RC_SUBR= mysql-server
@@ -136,6 +140,8 @@ MMAN8= mysqld.8
CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON"
CMAKE_ARGS+= -DWITHOUT_CLIENTLIBS="ON"
+# Disable unit tests, it fails on !amd64 and <13.0 due to c++17 rules
+CMAKE_ARGS+= -DWITH_UNIT_TESTS="OFF"
OPTIONS_GROUP= STORAGE
OPTIONS_GROUP_STORAGE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA
@@ -175,28 +181,27 @@ FEDERATED_SUB_LIST_OFF+= FEDER=""
# which is broken on i386 due to different size of types and caused a
# 'static_assert(alignof(T) <= alignof(std::max_align_t))' error
.if ${ARCH} == i386
-CMAKE_ARGS+= -DDISABLE_PSI_MEMORY=1
+#CMAKE_ARGS+= -DDISABLE_PSI_MEMORY=1
+SSP_UNSAFE= yes
.endif
-.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1200057
-SUB_LIST+= LEGACY_LIMITS="@comment " MODERN_LIMITS=""
+.if ${ARCH} == powerpc
+LDFLAGS+= -latomic
+USES+= compiler:gcc-c++11-lib
.else
-SUB_LIST+= LEGACY_LIMITS="" MODERN_LIMITS="@comment "
+USES+= compiler:c++17-lang
.endif
.include <bsd.port.pre.mk>
-.if ${ARCH} == "i386" && ${OSVERSION} < 1200000
-# clang 7.x and 8.x do not build properly on 11i386
-CPP= clang-cpp${LLVM_DEFAULT}
-CC= clang${LLVM_DEFAULT}
-CXX= clang++${LLVM_DEFAULT}
-BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT}
-.endif
-
post-extract:
@${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h
+# XXX MBi alignment issue
+.if ${ARCH} == i386
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-boost-boost_1_77_0-boost-move-detail-type_traits.hpp
+.endif
+
.if !defined(CLIENT_ONLY)
post-install:
${MKDIR} ${STAGEDIR}${ETCDIR}
diff --git a/databases/mysql80-server/distinfo b/databases/mysql80-server/distinfo
index d8b53adf2580..bc0a2dd68ade 100644
--- a/databases/mysql80-server/distinfo
+++ b/databases/mysql80-server/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1621139131
-SHA256 (mysql-boost-8.0.25.tar.gz) = 93c5f57cbd69573a8d9798725edec52e92830f70c398a1afaaea2227db331728
-SIZE (mysql-boost-8.0.25.tar.gz) = 290265324
+TIMESTAMP = 1700321902
+SHA256 (mysql-boost-8.0.35.tar.gz) = 41253c3a99cefcf6d806040c6687692eb0c37b4c7aae5882417dfb9c5d3ce4ce
+SIZE (mysql-boost-8.0.35.tar.gz) = 438111810
diff --git a/databases/mysql80-server/files/extra-patch-boost-boost_1_77_0-boost-move-detail-type_traits.hpp b/databases/mysql80-server/files/extra-patch-boost-boost_1_77_0-boost-move-detail-type_traits.hpp
new file mode 100644
index 000000000000..6365179f2bc4
--- /dev/null
+++ b/databases/mysql80-server/files/extra-patch-boost-boost_1_77_0-boost-move-detail-type_traits.hpp
@@ -0,0 +1,20 @@
+--- ./boost/boost_1_77_0/boost/move/detail/type_traits.hpp.ORIG 2021-08-05 11:42:11.000000000 +0200
++++ ./boost/boost_1_77_0/boost/move/detail/type_traits.hpp 2023-11-04 13:09:44.198320000 +0100
+@@ -1104,7 +1104,7 @@
+ typedef int (alignment_dummy::*member_ptr);
+ typedef int (alignment_dummy::*member_function_ptr)();
+ struct alignment_struct
+-{ long double dummy[4]; };
++{ double XXXdummy[4]; };
+
+ /////////////////////////////
+ // max_align_t
+@@ -1122,7 +1122,7 @@
+ float float_;
+ double double_;
+ void * void_ptr_;
+- long double long_double_[4];
++ double XXXlong_double_[4];
+ alignment_dummy *unknown_class_ptr_;
+ function_ptr function_ptr_;
+ member_function_ptr member_function_ptr_;
diff --git a/databases/mysql80-server/files/extra-patch-config.h.cmake b/databases/mysql80-server/files/extra-patch-config.h.cmake
deleted file mode 100644
index 3ac1add1b9ce..000000000000
--- a/databases/mysql80-server/files/extra-patch-config.h.cmake
+++ /dev/null
@@ -1,12 +0,0 @@
---- config.h.cmake.orig 2014-12-05 16:24:02 UTC
-+++ config.h.cmake
-@@ -151,7 +151,8 @@
- #cmakedefine HAVE_FESETROUND 1
- #cmakedefine HAVE_FINITE 1
- #cmakedefine HAVE_FP_EXCEPT 1
--#cmakedefine HAVE_FPSETMASK 1
-+#cmakedefine HAVE_FPSETMASK 0
-+#cmakedefine HAVE_FEDISABLEEXCEPT 1
- #cmakedefine HAVE_FSEEKO 1
- #cmakedefine HAVE_FSYNC 1
- #cmakedefine HAVE_FTIME 1
diff --git a/databases/mysql80-server/files/my.cnf.sample.in b/databases/mysql80-server/files/my.cnf.sample.in
index 7fa72451dec3..3d1264c1bd61 100644
--- a/databases/mysql80-server/files/my.cnf.sample.in
+++ b/databases/mysql80-server/files/my.cnf.sample.in
@@ -14,19 +14,17 @@ bind-address = 127.0.0.1
basedir = %%PREFIX%%
datadir = %%MY_DBDIR%%
tmpdir = %%MY_TMPDIR%%
-slave-load-tmpdir = %%MY_TMPDIR%%
+replica-load-tmpdir = %%MY_TMPDIR%%
secure-file-priv = %%MY_SECDIR%%
log-bin = mysql-bin
log-output = TABLE
-master-info-repository = TABLE
-relay-log-info-repository = TABLE
relay-log-recovery = 1
slow-query-log = 1
server-id = 1
sync_binlog = 1
sync_relay_log = 1
binlog_cache_size = 16M
-expire_logs_days = 30
+binlog_expire_logs_seconds = 2592000
default_password_lifetime = 0
enforce-gtid-consistency = 1
gtid-mode = ON
@@ -47,12 +45,11 @@ innodb_log_group_home_dir = %%MY_DBDIR%%
innodb_data_file_path = ibdata1:128M:autoextend
innodb_temp_data_file_path = ibtmp1:128M:autoextend
innodb_flush_method = O_DIRECT
-innodb_log_file_size = 256M
+innodb_redo_log_capacity = 512M
innodb_log_buffer_size = 16M
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_autoinc_lock_mode = 2
-skip-symbolic-links
[mysqldump]
max_allowed_packet = 256M
diff --git a/databases/mysql80-server/files/mysql-server.in b/databases/mysql80-server/files/mysql-server.in
index b0297539a441..c79874df9f2c 100644
--- a/databases/mysql80-server/files/mysql-server.in
+++ b/databases/mysql80-server/files/mysql-server.in
@@ -8,9 +8,6 @@
# Add the following line to /etc/rc.conf to enable mysql:
# mysql_enable (bool): Set to "NO" by default.
# Set it to "YES" to enable MySQL.
-%%LEGACY_LIMITS%%# mysql_limits (bool): Set to "NO" by default.
-%%LEGACY_LIMITS%%# Set it to yes to run `limits -e -U mysql`
-%%LEGACY_LIMITS%%# just before mysql starts.
# mysql_dbdir (str): Default to "%%MY_DBDIR%%"
# Base database directory.
# mysql_confdir (str): Default to "%%ETCDIR%%"
@@ -19,7 +16,7 @@
# Set it in the rc.conf or default behaviour of
# `mysqld_safe` itself, will be picking
# ${mysql_confdir}/my.cnf if it exists.
-# mysql_pidfile (str): Custum PID file path and name.
+# mysql_pidfile (str): Custom PID file path and name.
# Default to "${mysql_dbdir}/${hostname}.pid".
# mysql_args (str): Custom additional arguments to be passed
# to mysqld_safe (default empty).
@@ -33,7 +30,6 @@ rcvar=mysql_enable
load_rc_config $name
: ${mysql_enable="NO"}
-%%LEGACY_LIMITS%%: ${mysql_limits="NO"}
: ${mysql_dbdir="%%MY_DBDIR%%"}
: ${mysql_confdir="%%ETCDIR%%"}
if [ -f "${mysql_confdir}/my.cnf" ]; then
@@ -46,7 +42,6 @@ mysql_extra="--defaults-extra-file=${mysql_optfile}"
fi
mysql_user="mysql"
-%%LEGACY_LIMITS%%mysql_limits_args="-e -U ${mysql_user}"
: ${hostname:=`/bin/hostname`}
pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"}
command="/usr/sbin/daemon"
@@ -67,12 +62,7 @@ mysql_prestart()
if [ ! -d "${mysql_dbdir}/mysql/." ]; then
mysql_create_auth_tables || return 1
fi
-%%LEGACY_LIMITS%% if checkyesno mysql_limits; then
-%%LEGACY_LIMITS%% eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
-%%LEGACY_LIMITS%% else
-%%LEGACY_LIMITS%% return 0
-%%LEGACY_LIMITS%% fi
-%%MODERN_LIMITS%% return 0
+ return 0
}
mysql_poststart()
diff --git a/databases/mysql80-server/files/patch-CMakeLists.txt b/databases/mysql80-server/files/patch-CMakeLists.txt
index 1838577bde1c..625e0bac005c 100644
--- a/databases/mysql80-server/files/patch-CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-CMakeLists.txt
@@ -1,22 +1,43 @@
---- CMakeLists.txt.orig 2020-09-23 12:37:48 UTC
+--- CMakeLists.txt.orig 2022-07-06 21:36:34 UTC
+++ CMakeLists.txt
-@@ -1417,10 +1417,10 @@ IF(WITH_AUTHENTICATION_LDAP)
+@@ -1819,7 +1819,7 @@ IF(LINUX AND KNOWN_CUSTOM_LIBRARIES)
+ ENDIF()
+
+ IF(WITH_AUTHENTICATION_LDAP)
+- IF(LINUX AND KNOWN_CUSTOM_LIBRARIES)
++ IF(LINUX OR FREEBSD AND KNOWN_CUSTOM_LIBRARIES)
+ # LDAP / SASL / KERBEROS / SSL must all be "system" or "custom", not a mix.
+ IF(WITH_LDAP STREQUAL "system" OR
+ WITH_SASL STREQUAL "system" OR
+@@ -1868,6 +1868,7 @@ IF(WITH_AUTHENTICATION_KERBEROS)
ENDIF()
ENDIF()
--# Add system/bundled editline.
--MYSQL_CHECK_EDITLINE()
- # Add libevent
--MYSQL_CHECK_LIBEVENT()
++IF(NOT WITHOUT_TOOLS)
+ # Add system/bundled editline.
+ MYSQL_CHECK_EDITLINE()
+ SET(EDITLINE_WARN_GIVEN)
+@@ -1878,7 +1879,9 @@ IF(EDITLINE_WARN_GIVEN)
+ "You can use -DWITH_EDITLINE=bundled instead."
+ )
+ ENDIF()
++ENDIF(NOT WITHOUT_TOOLS)
+
+IF(NOT WITHOUT_SERVER)
-+ MYSQL_CHECK_LIBEVENT()
-+ENDIF()
+ # Add libevent
+ MYSQL_CHECK_LIBEVENT()
+ SET(LIBEVENT_WARN_GIVEN)
+@@ -1889,6 +1892,7 @@ IF(LIBEVENT_WARN_GIVEN)
+ "You can use -DWITH_LIBEVENT=bundled instead."
+ )
+ ENDIF()
++ENDIF(NOT WITHOUT_SERVER)
+
# Add lz4 library
MYSQL_CHECK_LZ4()
- # Add icu library
-@@ -1520,7 +1520,9 @@ IF(WITH_UNIT_TESTS)
- INCLUDE(googletest)
- ENDIF()
+@@ -2142,7 +2146,9 @@ ADD_CUSTOM_TARGET(clang_tidy_prerequisites)
+ ADD_DEPENDENCIES(clang_tidy_prerequisites protobuf_generated_all)
+ ADD_DEPENDENCIES(clang_tidy_prerequisites GenError)
-ADD_SUBDIRECTORY(include)
+IF(NOT WITHOUT_CLIENTLIBS)
@@ -25,14 +46,12 @@
ADD_SUBDIRECTORY(strings)
ADD_SUBDIRECTORY(vio)
ADD_SUBDIRECTORY(mysys)
-@@ -1562,12 +1564,17 @@ IF(WITH_UNIT_TESTS)
+@@ -2187,12 +2193,15 @@ IF(WITH_UNIT_TESTS)
ADD_SUBDIRECTORY(unittest/mytap/t)
ENDIF()
-ADD_SUBDIRECTORY(client)
+IF(NOT WITHOUT_TOOLS)
-+ # Add system/bundled editline
-+ MYSQL_CHECK_EDITLINE()
+ ADD_SUBDIRECTORY(client)
+ENDIF(NOT WITHOUT_TOOLS)
+
@@ -45,7 +64,7 @@
ADD_SUBDIRECTORY(testclients)
ADD_SUBDIRECTORY(sql)
ENDIF()
-@@ -1590,11 +1597,11 @@ ENDIF()
+@@ -2247,11 +2256,11 @@ ENDIF()
# scripts/mysql_config depends on client and server targets loaded above.
# It is referenced by some of the directories below, so we insert it here.
ADD_SUBDIRECTORY(scripts)
@@ -58,7 +77,7 @@
IF(WITH_INTERNAL)
ADD_SUBDIRECTORY(internal)
ENDIF()
-@@ -1703,6 +1710,7 @@ IF(PACK_SEPARATE_COMPONENTS)
+@@ -2361,6 +2370,7 @@ IF(PACK_SEPARATE_COMPONENTS)
SET(CPACK_COMPONENTS_GROUPING IGNORE)
ENDIF()
@@ -66,7 +85,7 @@
IF(UNIX)
INSTALL(FILES
Docs/mysql.info
-@@ -1737,6 +1745,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
+@@ -2395,6 +2405,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
PATTERN "sp-imp-spec.txt" EXCLUDE
PATTERN "README.build" EXCLUDE
)
diff --git a/databases/mysql80-server/files/patch-boost_boost__1__77__0_boost_mpl_aux___integral__wrapper.hpp b/databases/mysql80-server/files/patch-boost_boost__1__77__0_boost_mpl_aux___integral__wrapper.hpp
new file mode 100644
index 000000000000..66c430a4346f
--- /dev/null
+++ b/databases/mysql80-server/files/patch-boost_boost__1__77__0_boost_mpl_aux___integral__wrapper.hpp
@@ -0,0 +1,11 @@
+--- boost/boost_1_77_0/boost/mpl/aux_/integral_wrapper.hpp.orig 2021-08-05 09:42:13 UTC
++++ boost/boost_1_77_0/boost/mpl/aux_/integral_wrapper.hpp
+@@ -56,7 +56,7 @@ struct AUX_WRAPPER_NAME
+ // have to #ifdef here: some compilers don't like the 'N + 1' form (MSVC),
+ // while some other don't like 'value + 1' (Borland), and some don't like
+ // either
+-#if BOOST_WORKAROUND(__EDG_VERSION__, <= 243)
++#if 1 //BOOST_WORKAROUND(__EDG_VERSION__, <= 243)
+ private:
+ BOOST_STATIC_CONSTANT(AUX_WRAPPER_VALUE_TYPE, next_value = BOOST_MPL_AUX_STATIC_CAST(AUX_WRAPPER_VALUE_TYPE, (N + 1)));
+ BOOST_STATIC_CONSTANT(AUX_WRAPPER_VALUE_TYPE, prior_value = BOOST_MPL_AUX_STATIC_CAST(AUX_WRAPPER_VALUE_TYPE, (N - 1)));
diff --git a/databases/mysql80-server/files/patch-client_CMakeLists.txt b/databases/mysql80-server/files/patch-client_CMakeLists.txt
index bbfb4249c799..6a433a889e80 100644
--- a/databases/mysql80-server/files/patch-client_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-client_CMakeLists.txt
@@ -1,4 +1,4 @@
---- client/CMakeLists.txt.orig 2021-03-22 08:44:50 UTC
+--- client/CMakeLists.txt.orig 2021-09-28 11:46:34 UTC
+++ client/CMakeLists.txt
@@ -28,10 +28,13 @@ DISABLE_MISSING_PROFILE_WARNING()
## Subdirectory with common client code.
@@ -11,18 +11,18 @@
+ENDIF()
+IF(NOT WITHOUT_CLIENTLIBS)
- MYSQL_ADD_EXECUTABLE(mysql
- ${CMAKE_SOURCE_DIR}/sql-common/net_ns.cc
- completion_hash.cc
-@@ -41,6 +44,7 @@ MYSQL_ADD_EXECUTABLE(mysql
- client_query_attributes.cc
+ INCLUDE_DIRECTORIES(
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ )
+@@ -47,6 +50,7 @@ MYSQL_ADD_EXECUTABLE(mysql
+ ${CMAKE_CURRENT_SOURCE_DIR}/common/user_registration.cc
LINK_LIBRARIES mysqlclient client_base ${EDITLINE_LIBRARY}
)
+ENDIF()
IF(NOT WITHOUT_SERVER)
MYSQL_ADD_EXECUTABLE(mysql_upgrade
-@@ -57,6 +61,7 @@ IF(SOLARIS_SPARC AND MY_COMPILER_IS_SUNPRO AND
+@@ -55,6 +59,7 @@ IF(NOT_WITHOUT_SERVER)
)
ENDIF()
@@ -30,7 +30,7 @@
MYSQL_ADD_EXECUTABLE(mysqltest
mysqltest.cc
mysqltest/error_names.cc
-@@ -73,6 +78,9 @@ MYSQL_ADD_EXECUTABLE(mysqltest
+@@ -71,6 +76,9 @@ MYSQL_ADD_EXECUTABLE(mysqltest
ENABLE_EXPORTS
LINK_LIBRARIES mysqlclient
)
@@ -40,7 +40,7 @@
MYSQL_ADD_EXECUTABLE(mysqlcheck
check/mysqlcheck.cc
check/mysqlcheck_core.cc
-@@ -248,7 +256,9 @@ ENDIF()
+@@ -250,7 +258,9 @@ ENDIF()
TARGET_COMPILE_DEFINITIONS(mysqlbinlog PRIVATE DISABLE_PSI_MUTEX)
TARGET_INCLUDE_DIRECTORIES(mysqlbinlog PRIVATE ${CMAKE_SOURCE_DIR}/sql)
@@ -49,8 +49,8 @@
+IF(WITHOUT_SERVER)
MYSQL_ADD_EXECUTABLE(mysqladmin
mysqladmin.cc
- LINK_LIBRARIES mysqlclient
-@@ -261,6 +271,9 @@ MYSQL_ADD_EXECUTABLE(mysql_config_editor
+ multi_factor_passwordopt-vars.cc
+@@ -265,6 +275,9 @@ MYSQL_ADD_EXECUTABLE(mysql_config_editor
mysql_config_editor.cc
LINK_LIBRARIES mysqlclient
)
@@ -60,7 +60,7 @@
MYSQL_ADD_EXECUTABLE(mysql_secure_installation
mysql_secure_installation.cc
LINK_LIBRARIES mysqlclient
-@@ -271,6 +284,7 @@ MYSQL_ADD_EXECUTABLE(mysql_ssl_rsa_setup
+@@ -275,6 +288,7 @@ MYSQL_ADD_EXECUTABLE(mysql_ssl_rsa_setup
path.cc
LINK_LIBRARIES mysys
)
diff --git a/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake b/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake
index 2f6f488d4abd..90629de01287 100644
--- a/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake
+++ b/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake
@@ -1,8 +1,8 @@
---- cmake/os/FreeBSD.cmake.orig 2019-09-20 08:30:51 UTC
+--- cmake/os/FreeBSD.cmake.orig 2021-12-17 16:07:27 UTC
+++ cmake/os/FreeBSD.cmake
-@@ -45,8 +45,20 @@ IF(NOT FORCE_UNSUPPORTED_COMPILER)
- MESSAGE(FATAL_ERROR
- "GCC 5.3 or newer is required (-dumpversion says ${GCC_VERSION})")
+@@ -48,8 +48,20 @@ IF(NOT FORCE_UNSUPPORTED_COMPILER)
+ IF(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.1)
+ MESSAGE(FATAL_ERROR "GCC 7.1 or newer is required")
ENDIF()
- ELSE()
- MESSAGE(FATAL_ERROR "Unsupported compiler!")
diff --git a/databases/mysql80-server/files/patch-cmake_plugin.cmake b/databases/mysql80-server/files/patch-cmake_plugin.cmake
index ecd2598f320e..874c450a4ef2 100644
--- a/databases/mysql80-server/files/patch-cmake_plugin.cmake
+++ b/databases/mysql80-server/files/patch-cmake_plugin.cmake
@@ -1,6 +1,6 @@
---- cmake/plugin.cmake.orig 2019-09-20 08:30:51 UTC
+--- cmake/plugin.cmake.orig 2021-12-17 16:07:27 UTC
+++ cmake/plugin.cmake
-@@ -230,15 +230,15 @@ MACRO(MYSQL_ADD_PLUGIN plugin_arg)
+@@ -247,15 +247,15 @@ MACRO(MYSQL_ADD_PLUGIN plugin_arg)
# For testing purposes, we need
# <...>/lib/plugin/debug/authentication_ldap_sasl_client.so
diff --git a/databases/mysql80-server/files/patch-cmake_ssl.cmake b/databases/mysql80-server/files/patch-cmake_ssl.cmake
index 9173b842a952..e7688d6e50ad 100644
--- a/databases/mysql80-server/files/patch-cmake_ssl.cmake
+++ b/databases/mysql80-server/files/patch-cmake_ssl.cmake
@@ -1,29 +1,23 @@
---- cmake/ssl.cmake.orig 2019-09-20 08:30:51 UTC
+--- cmake/ssl.cmake.orig 2022-07-06 21:36:34 UTC
+++ cmake/ssl.cmake
-@@ -199,7 +199,7 @@ MACRO (MYSQL_CHECK_SSL)
- # 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].*"
-+ REGEX "^#[\t ]*define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*"
- )
- STRING(REGEX REPLACE
- "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9]).*$" "\\1"
-@@ -222,13 +222,14 @@ MACRO (MYSQL_CHECK_SSL)
- OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}"
- )
+@@ -142,7 +142,7 @@ MACRO(FIND_OPENSSL_VERSION)
+ # 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].*"
++ REGEX "^#[\t ]*define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*"
+ )
+ STRING(REGEX REPLACE
+ "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9]).*$" "\\1"
+@@ -380,8 +380,9 @@ MACRO (MYSQL_CHECK_SSL)
+ "Not a supported openssl version in WITH_SSL=${WITH_SSL}.")
ENDIF()
-- IF("${OPENSSL_MAJOR_VERSION}.${OPENSSL_MINOR_VERSION}.${OPENSSL_FIX_VERSION}" VERSION_GREATER "1.1.0")
+
+- IF("${OPENSSL_MAJOR_MINOR_FIX_VERSION}" VERSION_GREATER "1.1.0")
- ADD_DEFINITIONS(-DHAVE_TLSv13)
+ 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)
- FIND_PROGRAM(OPENSSL_EXECUTABLE openssl
diff --git a/databases/mysql80-server/files/patch-include_CMakeLists.txt b/databases/mysql80-server/files/patch-include_CMakeLists.txt
deleted file mode 100644
index 11fed601d4f4..000000000000
--- a/databases/mysql80-server/files/patch-include_CMakeLists.txt
+++ /dev/null
@@ -1,176 +0,0 @@
---- include/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC
-+++ include/CMakeLists.txt
-@@ -37,10 +37,173 @@ SET(HEADERS
- ${CMAKE_CURRENT_BINARY_DIR}/mysql_version.h
- ${CMAKE_CURRENT_BINARY_DIR}/mysqld_error.h
- field_types.h
-+ base64.h
-+ big_endian.h
-+ c_string_less.h
-+ crypt_genhash_impl.h
-+ decimal.h
-+ depth_first_search.h
-+ dur_prop.h
-+ errmsg.h
-+ ft_global.h
-+ guard.h
-+ heap.h
-+ integer_digits.h
-+ keycache.h
-+ lex_string.h
-+ lf.h
-+ little_endian.h
-+ m_ctype.h
-+ m_string.h
-+ map_helpers.h
-+ mf_wcomp.h
-+ mutex_lock.h
-+ my_aes.h
-+ my_alloc.h
-+ my_atomic.h
-+ my_base.h
-+ my_bit.h
-+ my_bitmap.h
-+ my_byteorder.h
-+ my_check_opt.h
-+ my_command.h
-+ my_compare.h
-+ my_compiler.h
-+ my_dbug.h
-+ my_default.h
-+ my_dir.h
-+ my_double2ulonglong.h
-+ my_getopt.h
-+ my_hash_combine.h
-+ my_icp.h
-+ my_inttypes.h
-+ my_io.h
-+ my_list.h
-+ my_loglevel.h
-+ my_macros.h
-+ my_md5.h
-+ my_md5_size.h
-+ my_murmur3.h
-+ my_pointer_arithmetic.h
-+ my_psi_config.h
-+ my_rapidjson_size_t.h
-+ my_rdtsc.h
-+ my_rnd.h
-+ my_sharedlib.h
-+ my_shm_defaults.h
-+ my_sqlcommand.h
-+ my_stacktrace.h
-+ my_sys.h
-+ my_systime.h
-+ my_table_map.h
-+ my_thread.h
-+ my_thread_local.h
-+ my_thread_os_id.h
-+ my_time.h
-+ my_timer.h
-+ my_tree.h
-+ my_uctype.h
-+ my_user.h
-+ my_xml.h
-+ myisam.h
-+ myisammrg.h
-+ myisampack.h
-+ mysql.h
-+ mysql.h.pp
-+ mysql_com.h
-+ mysql_com_server.h
-+ mysql_time.h
-+ mysql_version.h.in
-+ mysys_err.h
-+ nullable.h
-+ password.h
-+ pfs_cond_provider.h
-+ pfs_error_provider.h
-+ pfs_file_provider.h
-+ pfs_idle_provider.h
-+ pfs_memory_provider.h
-+ pfs_metadata_provider.h
-+ pfs_mutex_provider.h
-+ pfs_rwlock_provider.h
-+ pfs_socket_provider.h
-+ pfs_stage_provider.h
-+ pfs_statement_provider.h
-+ pfs_table_provider.h
-+ pfs_thread_provider.h
-+ pfs_transaction_provider.h
-+ prealloced_array.h
-+ print_version.h
-+ priority_queue.h
-+ rwlock_scoped_lock.h
-+ scope_guard.h
-+ service_versions.h
-+ sha1.h
-+ sha2.h
-+ sql_chars.h
-+ sql_common.h
-+ sql_string.h
-+ sslopt-case.h
-+ sslopt-longopts.h
-+ sslopt-vars.h
-+ tables_contained_in.h
-+ template_utils.h
-+ thr_cond.h
-+ thr_lock.h
-+ thr_mutex.h
-+ thr_rwlock.h
-+ typelib.h
-+ varlen_sort.h
-+ violite.h
-+ welcome_copyright_notice.h
- )
- SET(HEADERS_MYSQL_DIR
- mysql/client_plugin.h
- mysql/plugin_auth_common.h
-+ mysql/udf_registration_types.h
-+ mysql/client_authentication.h
-+ mysql/client_plugin.h.pp
-+ mysql/com_data.h
-+ mysql/group_replication_priv.h
-+ mysql/innodb_priv.h
-+ mysql/mysql_lex_string.h
-+ mysql/plugin.h
-+ mysql/plugin_audit.h
-+ mysql/plugin_audit.h.pp
-+ mysql/plugin_auth.h
-+ mysql/plugin_auth.h.pp
-+ mysql/plugin_auth_common.h
-+ mysql/plugin_ftparser.h
-+ mysql/plugin_ftparser.h.pp
-+ mysql/plugin_group_replication.h
-+ mysql/plugin_keyring.h
-+ mysql/plugin_keyring.h.pp
-+ mysql/plugin_query_rewrite.h
-+ mysql/plugin_trace.h
-+ mysql/plugin_validate_password.h
-+ mysql/service_command.h
-+ mysql/service_locking.h
-+ mysql/service_my_plugin_log.h
-+ mysql/service_mysql_alloc.h
-+ mysql/service_mysql_keyring.h
-+ mysql/service_mysql_password_policy.h
-+ mysql/service_mysql_string.h
-+ mysql/service_parser.h
-+ mysql/service_plugin_registry.h
-+ mysql/service_rpl_transaction_ctx.h
-+ mysql/service_rpl_transaction_write_set.h
-+ mysql/service_rules_table.h
-+ mysql/service_security_context.h
-+ mysql/service_srv_session.h
-+ mysql/service_srv_session_info.h
-+ mysql/service_ssl_wrapper.h
-+ mysql/service_thd_alloc.h
-+ mysql/service_thd_engine_lock.h
-+ mysql/service_thd_wait.h
-+ mysql/service_thread_scheduler.h
-+ mysql/services.h
-+ mysql/services.h.pp
-+ mysql/thread_pool_priv.h
-+ mysql/thread_type.h
- mysql/udf_registration_types.h
- )
-
diff --git a/databases/mysql80-server/files/patch-include_dh__ecdh__config.h b/databases/mysql80-server/files/patch-include_dh__ecdh__config.h
new file mode 100644
index 000000000000..a33067bbd562
--- /dev/null
+++ b/databases/mysql80-server/files/patch-include_dh__ecdh__config.h
@@ -0,0 +1,63 @@
+--- include/dh_ecdh_config.h.orig 2023-12-03 10:42:56 UTC
++++ include/dh_ecdh_config.h
+@@ -38,7 +38,7 @@
+ #endif /* OPENSSL_VERSION_NUMBER < 0x10002000L */
+
+ namespace {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ /* Following primes are from https://www.rfc-editor.org/rfc/rfc7919#appendix-A
+ */
+
+@@ -257,6 +257,7 @@ bool set_dh(SSL_CTX *ctx) {
+
+ DH *dh = nullptr;
+ #if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if !defined(LIBRESSL_VERSION_NUMBER)
+ switch (security_level) {
+ case 1:
+ [[fallthrough]];
+@@ -275,6 +276,43 @@ bool set_dh(SSL_CTX *ctx) {
+ default:
+ break;
+ };
++#else
++ dh = DH_new();
++ if (!dh) return true;
++
++ BIGNUM *dhp = nullptr;
++ BIGNUM *dhg = nullptr;
++ switch (security_level) {
++ case 1:
++ [[fallthrough]];
++ case 2:
++ dhp =
++ BN_bin2bn(rfc7919_ffdhe2048_p, sizeof(rfc7919_ffdhe2048_p), nullptr);
++ break;
++ case 3:
++ dhp =
++ BN_bin2bn(rfc7919_ffdhe3072_p, sizeof(rfc7919_ffdhe3072_p), nullptr);
++ break;
++ case 4:
++ dhp =
++ BN_bin2bn(rfc7919_ffdhe8192_p, sizeof(rfc7919_ffdhe8192_p), nullptr);
++ break;
++ case 5:
++ /* There is no RFC7919 approved prime for sec level 5 */
++ [[fallthrough]];
++ default:
++ DH_free(dh);
++ return true;
++ };
++
++ dhg = BN_bin2bn(rfc7919_g, sizeof(rfc7919_g), nullptr);
++ if (!dhp || !dhg || !DH_set0_pqg(dh, dhp, nullptr, dhg)) {
++ DH_free(dh);
++ BN_free(dhg);
++ BN_free(dhp);
++ return true;
++ }
++#endif /* !defined(LIBRESSL_VERSION_NUMBER) */
+ #else /* OPENSSL_VERSION_NUMBER >= 0x10100000L */
+ dh = DH_new();
+ if (!dh) return true;
diff --git a/databases/mysql80-server/files/patch-include_my__stacktrace.h b/databases/mysql80-server/files/patch-include_my__stacktrace.h
index 372aec242a8d..1654014bd77b 100644
--- a/databases/mysql80-server/files/patch-include_my__stacktrace.h
+++ b/databases/mysql80-server/files/patch-include_my__stacktrace.h
@@ -1,5 +1,5 @@
---- include/my_stacktrace.h.orig 2020-01-23 19:43:07.769584000 +0100
-+++ include/my_stacktrace.h 2020-01-23 19:43:48.684042000 +0100
+--- include/my_stacktrace.h.orig 2021-12-17 16:07:27 UTC
++++ include/my_stacktrace.h
@@ -43,7 +43,7 @@
HAVE_BACKTRACE - Linux, FreeBSD, OSX, Solaris
_WIN32 - Windows
@@ -8,4 +8,4 @@
+#if (defined(HAVE_BACKTRACE) || defined(_WIN32)) && (defined(__aarch64__) || defined(__amd64__) || defined(__i386__))
#define HAVE_STACKTRACE 1
void my_init_stacktrace();
- void my_print_stacktrace(uchar *stack_bottom, ulong thread_stack);
+ void my_print_stacktrace(const uchar *stack_bottom, ulong thread_stack);
diff --git a/databases/mysql80-server/files/patch-include_myisam.h b/databases/mysql80-server/files/patch-include_myisam.h
index b8f3ec7ef519..311c935fc115 100644
--- a/databases/mysql80-server/files/patch-include_myisam.h
+++ b/databases/mysql80-server/files/patch-include_myisam.h
@@ -1,6 +1,6 @@
---- include/myisam.h.orig 2019-09-20 08:30:51 UTC
+--- include/myisam.h.orig 2021-12-17 16:07:27 UTC
+++ include/myisam.h
-@@ -59,7 +59,7 @@
+@@ -60,7 +60,7 @@
The following defines can be increased if necessary.
But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
*/
diff --git a/databases/mysql80-server/files/patch-include_violite.h b/databases/mysql80-server/files/patch-include_violite.h
deleted file mode 100644
index 78d606a68c6c..000000000000
--- a/databases/mysql80-server/files/patch-include_violite.h
+++ /dev/null
@@ -1,14 +0,0 @@
---- include/violite.h.orig 2019-09-20 08:30:51 UTC
-+++ include/violite.h
-@@ -269,9 +269,11 @@ struct st_VioSSLFd *new_VioSSLConnectorFd(
-
- long process_tls_version(const char *tls_version);
-
-+#ifndef LIBRESSL_VERSION_NUMBER
- int set_fips_mode(const uint fips_mode, char *err_string);
-
- uint get_fips_mode();
-+#endif
-
- struct st_VioSSLFd *new_VioSSLAcceptorFd(
- const char *key_file, const char *cert_file, const char *ca_file,
diff --git a/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt b/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt
index d9cd7cd37249..44e1979f8075 100644
--- a/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt
@@ -1,6 +1,6 @@
---- libmysql/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC
+--- libmysql/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC
+++ libmysql/CMakeLists.txt
-@@ -192,6 +192,11 @@ IF (WIN32 AND OPENSSL_APPLINK_C)
+@@ -198,6 +198,11 @@ IF (WIN32 AND OPENSSL_APPLINK_C)
)
ENDIF()
@@ -12,30 +12,33 @@
#
# Include protocol tracing infrastructure and the test
# trace plugin if enabled by build options.
-@@ -242,11 +247,18 @@ IF(WIN32)
+@@ -271,8 +276,15 @@ IF(WIN32)
LIST(APPEND LIBS_TO_MERGE auth_win_client)
ENDIF()
--# LDAP authentication SASL client plugin
+-# LDAP authentication SASL client plug-in
-ADD_SUBDIRECTORY(authentication_ldap)
+IF(WITHOUT_CLIENTLIBS)
+ # Merge several convenience libraries into one big mysqlclient
-+ MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE} COMPONENT Development SKIP_INSTALL)
++ MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE}
++ COMPONENT Development
++ SKIP_INSTALL)
+ELSE(WITHOUT_CLIENTLIBS)
+ # LDAP authentication SASL client plugin
+ MESSAGE(STATUS "Creating LDAP authentication SASL client library.")
+ ADD_SUBDIRECTORY(authentication_ldap)
--# Merge several convenience libraries into one big mysqlclient
--MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE} COMPONENT Development)
-+ # Merge several convenience libraries into one big mysqlclient
-+ MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE} COMPONENT Development)
+ # FIDO authentication client plugin
+ ADD_SUBDIRECTORY(authentication_fido)
+@@ -288,6 +300,7 @@ MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERG
+ COMPONENT Development
+ LINK_LIBRARIES ${LIBS_TO_LINK}
+ )
+ENDIF(WITHOUT_CLIENTLIBS)
-+
- TARGET_LINK_LIBRARIES(mysqlclient PRIVATE ${LIBS_TO_LINK})
# Visual Studio users need debug static library for debug projects
-@@ -281,12 +291,22 @@ ENDIF()
+ IF(MSVC)
+@@ -334,17 +347,27 @@ ENDIF()
# Merge several convenience libraries into one big mysqlclient
# and link them together into shared library.
@@ -45,7 +48,7 @@
${CLIENT_API_FUNCTIONS}
${CLIENT_API_FUNCTIONS_UNDOCUMENTED}
${CLIENT_API_NONBLOCKING_FUNCTIONS}
-+ COMPONENT SharedLibraries
+ COMPONENT SharedLibraries
+ SKIP_INSTALL )
+ELSE(WITHOUT_CLIENTLIBS)
+MERGE_LIBRARIES_SHARED(libmysql ${LIBS_TO_MERGE}
@@ -53,17 +56,13 @@
+ ${CLIENT_API_FUNCTIONS}
+ ${CLIENT_API_FUNCTIONS_UNDOCUMENTED}
+ ${CLIENT_API_NONBLOCKING_FUNCTIONS}
- COMPONENT SharedLibraries)
++ COMPONENT SharedLibraries
+ LINK_LIBRARIES ${LIBS_TO_LINK}
+ ${UNIX_OUTPUT_NAME}
+ ${UNIX_SOVERSION}
+ ${UNIX_VERSION}
+ )
+ENDIF(WITHOUT_CLIENTLIBS)
- TARGET_LINK_LIBRARIES(libmysql PRIVATE ${LIBS_TO_LINK})
-
- IF(WIN32)
-@@ -300,7 +320,7 @@ ENDIF()
- IF(UNIX)
- # libtool compatability
-- IF(FREEBSD OR APPLE)
-+ IF(FREEBSD OR APPLE OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly")
- SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
- ELSE()
- SET(OS_SHARED_LIB_VERSION
+ # Downgrade warning for strncat in my_crypt_genhash.
+ IF((WITH_LTO OR CMAKE_COMPILER_FLAG_WITH_LTO) AND MY_COMPILER_IS_GNU)
diff --git a/databases/mysql80-server/files/patch-libservices_CMakeLists.txt b/databases/mysql80-server/files/patch-libservices_CMakeLists.txt
index 1fa50bdd2bca..95610f261f3a 100644
--- a/databases/mysql80-server/files/patch-libservices_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-libservices_CMakeLists.txt
@@ -1,6 +1,6 @@
---- libservices/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC
+--- libservices/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC
+++ libservices/CMakeLists.txt
-@@ -45,7 +45,9 @@ SET(MYSQLSERVICES_SOURCES
+@@ -47,7 +47,9 @@ SET(MYSQLSERVICES_SOURCES
plugin_registry_service.c)
ADD_LIBRARY(mysqlservices STATIC ${MYSQLSERVICES_SOURCES})
diff --git a/databases/mysql80-server/files/patch-man_CMakeLists.txt b/databases/mysql80-server/files/patch-man_CMakeLists.txt
index a08c4ce564c0..9c95ebf65a2b 100644
--- a/databases/mysql80-server/files/patch-man_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-man_CMakeLists.txt
@@ -1,5 +1,5 @@
---- man/CMakeLists.txt.orig 2020-10-20 11:47:42.675974000 +0200
-+++ man/CMakeLists.txt 2020-10-20 13:53:03.993879000 +0200
+--- man/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC
++++ man/CMakeLists.txt
@@ -23,26 +23,14 @@
# Copy man pages
SET(MAN1
@@ -27,7 +27,7 @@
mysqlimport.1
mysqlman.1
mysqlpump.1
-@@ -52,13 +41,23 @@ SET(MAN1
+@@ -52,13 +40,23 @@ SET(MAN1
zlib_decompress.1
)
@@ -56,8 +56,8 @@
-ENDIF()
SET(MAN1_NDB
- ndb-common-options.1
-@@ -105,8 +104,14 @@ SET(MAN8_NDB
+ ndb_blob_tool.1
+@@ -103,8 +101,14 @@ SET(MAN8_NDB
ndbmtd.8
)
diff --git a/databases/mysql80-server/files/patch-mysys_my__default.cc b/databases/mysql80-server/files/patch-mysys_my__default.cc
index 6a8cb5ebbaf2..87b603301f41 100644
--- a/databases/mysql80-server/files/patch-mysys_my__default.cc
+++ b/databases/mysql80-server/files/patch-mysys_my__default.cc
@@ -1,4 +1,4 @@
---- mysys/my_default.cc.orig 2021-04-23 15:06:40 UTC
+--- mysys/my_default.cc.orig 2021-12-17 16:07:27 UTC
+++ mysys/my_default.cc
@@ -204,7 +204,7 @@ bool no_defaults = false;
@@ -9,7 +9,7 @@
#define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */
static const char **default_directories = nullptr;
-@@ -915,6 +915,14 @@ static int search_default_file_with_ext(Process_option
+@@ -922,6 +922,14 @@ static int search_default_file_with_ext(Process_option
return 1; /* Ignore wrong files */
}
@@ -17,24 +17,24 @@
+ {
+ fprintf(stderr,
+ "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n",
-+ name,name);
++ name,name);
+ goto err;
+ }
+
while (true) {
auto fileline = mysql_file_getline(buff, sizeof(buff), fp, is_login_file);
char *linebuff = fileline.get();
-@@ -1300,7 +1308,8 @@ void my_print_default_files(const char *conf_file) {
+@@ -1311,7 +1319,8 @@ void my_print_default_files(const char *conf_file) {
end[(strlen(end) - 1)] = ' ';
else
strxmov(end, conf_file, *ext, " ", NullS);
- fputs(name, stdout);
-+ if (strstr(name, "/etc") != name)
-+ fputs(name, stdout);
++ if (strstr(name, "/etc") != name)
++ fputs(name, stdout);
}
}
}
-@@ -1640,14 +1649,9 @@ static const char **init_default_directories(MEM_ROOT
+@@ -1651,14 +1660,9 @@ static const char **init_default_directories(MEM_ROOT
#else
@@ -51,12 +51,12 @@
#endif
if ((env = getenv("MYSQL_HOME"))) errors += add_directory(alloc, env, dirs);
-@@ -1710,7 +1714,7 @@ int check_file_permissions(const char *file_name, bool
+@@ -1723,7 +1727,7 @@ int check_file_permissions(const char *file_name, bool
#if !defined(_WIN32)
MY_STAT stat_info;
-- if (!my_stat(file_name, &stat_info, MYF(0))) return 1;
-+ if (!my_stat(file_name, &stat_info, MYF(0))) return 0;
+- if (!my_stat(file_name, &stat_info, flags)) return 1;
++ if (!my_stat(file_name, &stat_info, flags)) return 0;
/*
Ignore .mylogin.cnf file if not exclusively readable/writable
by current user.
diff --git a/databases/mysql80-server/files/patch-mysys_my__kdf.cc b/databases/mysql80-server/files/patch-mysys_my__kdf.cc
new file mode 100644
index 000000000000..e4b12bfc09a0
--- /dev/null
+++ b/databases/mysql80-server/files/patch-mysys_my__kdf.cc
@@ -0,0 +1,20 @@
+--- mysys/my_kdf.cc.orig 2022-12-11 13:12:02 UTC
++++ mysys/my_kdf.cc
+@@ -56,7 +56,7 @@ int create_kdf_key(const unsigned char *key, const uns
+ std::unique_ptr<Key_derivation_function> kdf_function;
+
+ if (kdf_name == "hkdf") {
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ kdf_function = std::make_unique<Key_hkdf_function>(kdf_options);
+ #else
+ return 1;
+@@ -71,7 +71,7 @@ int create_kdf_key(const unsigned char *key, const uns
+ return kdf_function->derive_key(key, key_length, rkey, rkey_size);
+ }
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ Key_hkdf_function::Key_hkdf_function(vector<string> *kdf_options) {
+ kdf_options_ = {kdf_options};
+ }
diff --git a/databases/mysql80-server/files/patch-mysys_my__md5.cc b/databases/mysql80-server/files/patch-mysys_my__md5.cc
deleted file mode 100644
index 56986ec7f9b0..000000000000
--- a/databases/mysql80-server/files/patch-mysys_my__md5.cc
+++ /dev/null
@@ -1,12 +0,0 @@
---- mysys/my_md5.cc.orig 2019-09-20 08:30:51 UTC
-+++ mysys/my_md5.cc
-@@ -56,7 +56,9 @@ static void my_md5_hash(unsigned char *digest, unsigne
- int compute_md5_hash(char *digest, const char *buf, int len) {
- int retval = 0;
- int fips_mode = 0;
-+#ifndef LIBRESSL_VERSION_NUMBER
- fips_mode = FIPS_mode();
-+#endif /* LIBRESSL_VERSION_NUMBER */
- /* If fips mode is ON/STRICT restricted method calls will result into abort,
- * skipping call. */
- if (fips_mode == 0) {
diff --git a/databases/mysql80-server/files/patch-plugin_group__replication_libmysqlgcs_src_bindings_xcom_xcom_xcom__ssl__transport.c b/databases/mysql80-server/files/patch-plugin_group__replication_libmysqlgcs_src_bindings_xcom_xcom_xcom__ssl__transport.c
deleted file mode 100644
index 9dcdca8bd775..000000000000
--- a/databases/mysql80-server/files/patch-plugin_group__replication_libmysqlgcs_src_bindings_xcom_xcom_xcom__ssl__transport.c
+++ /dev/null
@@ -1,94 +0,0 @@
---- plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/xcom_ssl_transport.cc.orig 2019-09-20 08:30:51 UTC
-+++ plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/xcom_ssl_transport.cc
-@@ -175,7 +175,7 @@ SSL_CTX *client_ctx = NULL;
- static long process_tls_version(const char *tls_version) {
- const char *separator = ", ";
- char *token = NULL;
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- const char *tls_version_name_list[] = {"TLSv1", "TLSv1.1", "TLSv1.2",
- "TLSv1.3"};
- #else
-@@ -184,7 +184,7 @@ static long process_tls_version(const char *tls_versio
- #define TLS_VERSIONS_COUNTS \
- (sizeof(tls_version_name_list) / sizeof(*tls_version_name_list))
- unsigned int tls_versions_count = TLS_VERSIONS_COUNTS;
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- const long tls_ctx_list[TLS_VERSIONS_COUNTS] = {
- SSL_OP_NO_TLSv1, SSL_OP_NO_TLSv1_1, SSL_OP_NO_TLSv1_2, SSL_OP_NO_TLSv1_3};
- const char *ctx_flag_default = "TLSv1,TLSv1.1,TLSv1.2,TLSv1.3";
-@@ -240,7 +240,7 @@ static int configure_ssl_algorithms(
- long ssl_ctx_options = SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3;
- char cipher_list[SSL_CIPHER_LIST_SIZE] = {0};
- long ssl_ctx_flags = -1;
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- int tlsv1_3_enabled = 0;
- #endif /* HAVE_TLSv13 */
-
-@@ -253,7 +253,7 @@ static int configure_ssl_algorithms(
- goto error;
- }
-
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- ssl_ctx_options = (ssl_ctx_options | ssl_ctx_flags) &
- (SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 |
- SSL_OP_NO_TLSv1_1 | SSL_OP_NO_TLSv1_2 | SSL_OP_NO_TLSv1_3);
-@@ -265,7 +265,7 @@ static int configure_ssl_algorithms(
-
- SSL_CTX_set_options(ssl_ctx, ssl_ctx_options);
-
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- tlsv1_3_enabled = ((ssl_ctx_options & SSL_OP_NO_TLSv1_3) == 0);
- if (tlsv1_3_enabled) {
- /* Set OpenSSL TLS v1.3 ciphersuites.
-@@ -325,6 +325,7 @@ error:
- return 1;
- }
-
-+#ifndef LIBRESSL_VERSION_NUMBER
- #define OPENSSL_ERROR_LENGTH 512
- static int configure_ssl_fips_mode(const uint fips_mode) {
- int rc = -1;
-@@ -348,6 +349,7 @@ static int configure_ssl_fips_mode(const uint fips_mod
- EXIT:
- return rc;
- }
-+#endif
-
- static int configure_ssl_ca(SSL_CTX *ssl_ctx, const char *ca_file,
- const char *ca_path) {
-@@ -544,10 +546,12 @@ int xcom_init_ssl(const char *server_key_file, const c
- int verify_server = SSL_VERIFY_NONE;
- int verify_client = SSL_VERIFY_NONE;
-
-+#ifndef LIBRESSL_VERSION_NUMBER
- if (configure_ssl_fips_mode(ssl_fips_mode) != 1) {
- G_ERROR("Error setting the ssl fips mode");
- goto error;
- }
-+#endif
-
- SSL_library_init();
- SSL_load_error_strings();
-@@ -563,7 +567,7 @@ int xcom_init_ssl(const char *server_key_file, const c
- }
-
- G_DEBUG("Configuring SSL for the server")
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- server_ctx = SSL_CTX_new(TLS_server_method());
- #else
- server_ctx = SSL_CTX_new(SSLv23_server_method());
-@@ -582,7 +586,7 @@ int xcom_init_ssl(const char *server_key_file, const c
- SSL_CTX_set_verify(server_ctx, verify_server, NULL);
-
- G_DEBUG("Configuring SSL for the client")
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- client_ctx = SSL_CTX_new(TLS_client_method());
- #else
- client_ctx = SSL_CTX_new(SSLv23_client_method());
diff --git a/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt b/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt
index e3ee6f45bb06..58cb6a7922b1 100644
--- a/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt
@@ -1,4 +1,4 @@
---- plugin/x/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC
+--- plugin/x/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC
+++ plugin/x/CMakeLists.txt
@@ -77,6 +77,8 @@ INCLUDE_DIRECTORIES(
${MYSQLX_GENERATE_DIR}
@@ -8,4 +8,4 @@
+ ${BOOST_INCLUDE_DIR}
)
- MY_INCLUDE_SYSTEM_DIRECTORIES(PROTOBUF)
+ MY_INCLUDE_SYSTEM_DIRECTORIES(LIBEVENT)
diff --git a/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc b/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc
deleted file mode 100644
index df8f2bfd0942..000000000000
--- a/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc
+++ /dev/null
@@ -1,33 +0,0 @@
---- plugin/x/client/xconnection_impl.cc.orig 2019-09-20 08:30:51 UTC
-+++ plugin/x/client/xconnection_impl.cc
-@@ -520,6 +520,7 @@ XError Connection_impl::get_ssl_error(const int error_
- return XError(CR_SSL_CONNECTION_ERROR, buffer);
- }
-
-+#ifndef LIBRESSL_VERSION_NUMBER
- /**
- Set fips mode in openssl library,
- When we set fips mode ON/STRICT, it will perform following operations:
-@@ -559,6 +560,7 @@ int set_fips_mode(const uint32_t fips_mode,
- EXIT:
- return rc;
- }
-+#endif
-
- XError Connection_impl::activate_tls() {
- if (nullptr == m_vio) return get_socket_error(SOCKET_ECONNRESET);
-@@ -569,12 +571,14 @@ XError Connection_impl::activate_tls() {
- if (!m_context->m_ssl_config.is_configured())
- return XError{CR_SSL_CONNECTION_ERROR, ER_TEXT_TLS_NOT_CONFIGURATED, true};
-
-+#ifndef LIBRESSL_VERSION_NUMBER
- char err_string[OPENSSL_ERROR_LENGTH] = {'\0'};
- if (set_fips_mode(
- static_cast<uint32_t>(m_context->m_ssl_config.m_ssl_fips_mode),
- err_string) != 1) {
- return XError{CR_SSL_CONNECTION_ERROR, err_string, true};
- }
-+#endif
- auto ssl_ctx_flags = process_tls_version(
- details::null_when_empty(m_context->m_ssl_config.m_tls_version));
-
diff --git a/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h b/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h
index 8274f7e275ac..46d03cb9db69 100644
--- a/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h
+++ b/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h
@@ -7,7 +7,7 @@
- ts = {secs.count(),
- std::chrono::duration_cast<std::chrono::nanoseconds>(timeout)
+ ts = {(time_t)secs.count(),
-+ (time_t)std::chrono::duration_cast<std::chrono::nanoseconds>(timeout)
++ (long)std::chrono::duration_cast<std::chrono::nanoseconds>(timeout)
.count()};
p_ts = &ts;
diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt b/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt
index 74d19b39f2d3..65fe02456eec 100644
--- a/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt
@@ -1,14 +1,14 @@
---- router/src/harness/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC
+--- router/src/harness/src/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC
+++ router/src/harness/src/CMakeLists.txt
-@@ -205,7 +205,6 @@ IF(NOT WIN32)
+@@ -212,7 +212,6 @@ ELSE()
INSTALL(TARGETS harness-library
LIBRARY
DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
- NAMELINK_SKIP
)
- ELSE()
- INSTALL(TARGETS harness-library
-@@ -240,7 +239,6 @@ INSTALL(TARGETS harness_stdx
+ ENDIF()
+
+@@ -243,7 +242,6 @@ INSTALL(TARGETS harness_stdx
RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router
ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
@@ -16,7 +16,7 @@
)
## harness_tls
-@@ -277,5 +275,4 @@ INSTALL(TARGETS harness_tls
+@@ -284,5 +282,4 @@ INSTALL(TARGETS harness_tls
RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router
ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc b/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc
index 3c9c3d70b23f..d4a5ef543b49 100644
--- a/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc
+++ b/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc
@@ -1,11 +1,11 @@
---- router/src/harness/src/tls_client_context.cc.orig 2019-09-20 08:30:51 UTC
+--- router/src/harness/src/tls_client_context.cc.orig 2021-12-17 16:07:27 UTC
+++ router/src/harness/src/tls_client_context.cc
-@@ -54,7 +54,7 @@ void TlsClientContext::verify(TlsVerify verify) {
-
- void TlsClientContext::cipher_suites(const std::string &ciphers) {
+@@ -61,7 +61,7 @@ stdx::expected<void, std::error_code> TlsClientContext
+ stdx::expected<void, std::error_code> TlsClientContext::cipher_suites(
+ const std::string &ciphers) {
// TLSv1.3 ciphers are controlled via SSL_CTX_set_ciphersuites()
-#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 1)
+#ifdef TLS1_3_VERSION
if (1 != SSL_CTX_set_ciphersuites(ssl_ctx_.get(), ciphers.c_str())) {
- throw TlsError("set-cipher-suites");
+ return stdx::make_unexpected(make_tls_error());
}
diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc b/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc
index 9b53b3aae974..b1d818afe81a 100644
--- a/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc
+++ b/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc
@@ -1,6 +1,6 @@
---- router/src/harness/src/tls_context.cc.orig 2019-09-20 08:30:51 UTC
+--- router/src/harness/src/tls_context.cc.orig 2021-12-17 16:07:27 UTC
+++ router/src/harness/src/tls_context.cc
-@@ -91,7 +91,7 @@ static constexpr int o11x_version(TlsVersion version)
+@@ -241,7 +241,7 @@ static int o11x_version(TlsVersion version) {
return TLS1_1_VERSION;
case TlsVersion::TLS_1_2:
return TLS1_2_VERSION;
@@ -9,19 +9,19 @@
case TlsVersion::TLS_1_3:
return TLS1_3_VERSION;
#endif
-@@ -121,9 +121,11 @@ void TlsContext::version_range(TlsVersion min_version,
+@@ -272,9 +272,11 @@ stdx::expected<void, std::error_code> TlsContext::vers
default:
// unknown, leave all disabled
- // fallthrough
+ [[fallthrough]];
+#ifdef TLS1_3_VERSION
case TlsVersion::TLS_1_3:
opts |= SSL_OP_NO_TLSv1_2;
- // fallthrough
+ [[fallthrough]];
+#endif
case TlsVersion::TLS_1_2:
opts |= SSL_OP_NO_TLSv1_1;
- // fallthrough
-@@ -170,8 +172,10 @@ TlsVersion TlsContext::min_version() const {
+ [[fallthrough]];
+@@ -322,8 +324,10 @@ TlsVersion TlsContext::min_version() const {
return TlsVersion::TLS_1_1;
case TLS1_2_VERSION:
return TlsVersion::TLS_1_2;
@@ -32,7 +32,7 @@
case 0:
return TlsVersion::AUTO;
default:
-@@ -230,7 +234,8 @@ TlsContext::InfoCallback TlsContext::info_callback() c
+@@ -382,7 +386,8 @@ TlsContext::InfoCallback TlsContext::info_callback() c
}
int TlsContext::security_level() const {
diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc b/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc
index ac19ffd0c661..5a63eba14103 100644
--- a/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc
+++ b/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc
@@ -1,12 +1,12 @@
---- router/src/harness/src/tls_server_context.cc.orig 2019-09-20 08:30:51 UTC
-+++ router/src/harness/src/tls_server_context.cc
-@@ -166,7 +166,8 @@ void TlsServerContext::init_tmp_dh(const std::string &
- }
+--- router/src/harness/src/tls_server_context.cc.orig 2023-11-18 19:39:18.923205000 +0100
++++ router/src/harness/src/tls_server_context.cc 2023-11-18 19:42:53.690094000 +0100
+@@ -474,7 +474,8 @@ int TlsServerContext::security_level() const {
+ }
- } else {
+ int TlsServerContext::security_level() const {
-#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 0)
-+#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 0) && \
-+ !defined(LIBRESSL_VERSION_NUMBER)
- dh2048.reset(DH_get_2048_256());
- #else
- /*
++#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 0) \
++ && !defined(LIBRESSL_VERSION_NUMBER)
+ int sec_level = SSL_CTX_get_security_level(ssl_ctx_.get());
+
+ assert(sec_level <= kMaxSecurityLevel);
diff --git a/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt b/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt
index cea2271c20d1..d6d71414449d 100644
--- a/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt
@@ -1,6 +1,6 @@
---- router/src/http/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC
+--- router/src/http/src/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC
+++ router/src/http/src/CMakeLists.txt
-@@ -62,7 +62,6 @@ INSTALL(TARGETS http_common
+@@ -58,7 +58,6 @@ INSTALL(TARGETS http_common
RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router
ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
@@ -8,7 +8,7 @@
)
## split library code from the plugin to use them _passwd and tests
-@@ -88,7 +87,6 @@ INSTALL(TARGETS http_auth_backend_lib
+@@ -84,7 +83,6 @@ INSTALL(TARGETS http_auth_backend_lib
RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router
ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
@@ -16,7 +16,7 @@
)
TARGET_INCLUDE_DIRECTORIES(http_auth_backend_lib PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
-@@ -141,7 +139,6 @@ INSTALL(TARGETS http_auth_realm_lib
+@@ -137,7 +135,6 @@ INSTALL(TARGETS http_auth_realm_lib
RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router
ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
diff --git a/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt b/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt
index cee2af2e2f73..ae48964a591e 100644
--- a/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt
@@ -1,6 +1,6 @@
---- router/src/router/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC
+--- router/src/router/src/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC
+++ router/src/router/src/CMakeLists.txt
-@@ -119,7 +119,6 @@ INSTALL(TARGETS router_lib
+@@ -124,7 +124,6 @@ INSTALL(TARGETS router_lib
RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router
ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router
diff --git a/databases/mysql80-server/files/patch-scripts_CMakeLists.txt b/databases/mysql80-server/files/patch-scripts_CMakeLists.txt
index 19e53914846e..d927dbe6a864 100644
--- a/databases/mysql80-server/files/patch-scripts_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-scripts_CMakeLists.txt
@@ -1,24 +1,15 @@
---- scripts/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC
+--- scripts/CMakeLists.txt.orig 2022-07-06 21:36:34 UTC
+++ scripts/CMakeLists.txt
-@@ -330,7 +330,7 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
- LIST(REMOVE_DUPLICATES ${target}_LIB_DEPENDS)
- FOREACH(lib ${${target}_LIB_DEPENDS})
- # Filter out "general", it is not a library, just CMake hint
-- IF(NOT lib STREQUAL "general" AND NOT ${var} MATCHES "-l${lib} ")
-+ IF(NOT lib STREQUAL "general" AND NOT ${var} MATCHES "-l${lib} " AND NOT lib STREQUAL "imported_openssl" AND NOT lib STREQUAL "imported_crypto")
- IF (lib MATCHES "^\\-l")
- SET(${var} "${${var}} ${lib} ")
- ELSEIF (lib MATCHES "^\\-L")
-@@ -340,6 +340,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
- GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE)
- STRING(REGEX REPLACE "^lib" "" lib "${lib}")
- SET(${var} "${${var}}-l${lib} " )
+@@ -332,6 +332,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
+ SET(${var} "${${var}}-L${dir} " )
+ ENDIF()
+ SET(${var} "${${var}}-l${lib} " )
+ ELSEIF(lib STREQUAL "-pthread")
+ SET(${var} "${${var}}-pthread " )
- ELSE()
- SET(${var} "${${var}}-l${lib} " )
- ENDIF()
-@@ -414,7 +416,7 @@ ELSE()
+ ELSE()
+ SET(${var} "${${var}}-l${lib} " )
+ ENDIF()
+@@ -405,7 +407,7 @@ ELSE()
${CMAKE_CURRENT_BINARY_DIR}/${PKGCONFIG_FILE}
ESCAPE_QUOTES @ONLY)
@@ -27,7 +18,7 @@
MESSAGE(STATUS "INSTALL ${PKGCONFIG_FILE} ${INSTALL_PKGCONFIGDIR}")
INSTALL(FILES
${CMAKE_CURRENT_BINARY_DIR}/${PKGCONFIG_FILE}
-@@ -427,23 +429,28 @@ ELSE()
+@@ -418,23 +420,28 @@ ELSE()
# mysqld_safe used in mtr even for systemd platforms
IF(WITH_SYSTEMD)
SET(BIN_SCRIPTS
diff --git a/databases/mysql80-server/files/patch-scripts_mysqld__safe.sh b/databases/mysql80-server/files/patch-scripts_mysqld__safe.sh
new file mode 100644
index 000000000000..47bc81e3963b
--- /dev/null
+++ b/databases/mysql80-server/files/patch-scripts_mysqld__safe.sh
@@ -0,0 +1,19 @@
+--- scripts/mysqld_safe.sh.orig 2022-01-23 11:48:36 UTC
++++ scripts/mysqld_safe.sh
+@@ -360,7 +360,7 @@ mysqld_ld_preload_text() {
+ # running mysqld. See ld.so for details.
+ set_malloc_lib() {
+ # This list is kept intentionally simple.
+- malloc_dirs="/usr/lib /usr/lib64 /usr/lib/i386-linux-gnu /usr/lib/x86_64-linux-gnu"
++ malloc_dirs="/usr/lib /usr/lib64 /usr/lib/i386-linux-gnu /usr/lib/x86_64-linux-gnu /usr/local/lib"
+ malloc_lib="$1"
+
+ # Allow --malloc-lib='' to override other settings
+@@ -379,6 +379,7 @@ set_malloc_lib() {
+ /usr/lib64) ;;
+ /usr/lib/i386-linux-gnu) ;;
+ /usr/lib/x86_64-linux-gnu) ;;
++ /usr/local/lib) ;;
+ *)
+ log_error "--malloc-lib must be located in one of the directories: $malloc_dirs"
+ exit 1
diff --git a/databases/mysql80-server/files/patch-sql-common_client.cc b/databases/mysql80-server/files/patch-sql-common_client.cc
deleted file mode 100644
index acf9035fb33c..000000000000
--- a/databases/mysql80-server/files/patch-sql-common_client.cc
+++ /dev/null
@@ -1,18 +0,0 @@
---- sql-common/client.cc.orig 2020-03-26 13:31:45 UTC
-+++ sql-common/client.cc
-@@ -7752,6 +7752,7 @@ int STDCALL mysql_options(MYSQL *mysql, enum mysql_opt
- return 1;
- break;
- case MYSQL_OPT_SSL_FIPS_MODE: {
-+#if !defined(LIBRESSL_VERSION_NUMBER)
- char ssl_err_string[OPENSSL_ERROR_LENGTH] = {'\0'};
- ENSURE_EXTENSIONS_PRESENT(&mysql->options);
- mysql->options.extension->ssl_fips_mode = *static_cast<const uint *>(arg);
-@@ -7763,6 +7764,7 @@ int STDCALL mysql_options(MYSQL *mysql, enum mysql_opt
- "Set Fips mode ON/STRICT failed, detail: '%s'.", ssl_err_string);
- return 1;
- }
-+#endif
- } break;
- case MYSQL_OPT_SSL_MODE:
- ENSURE_EXTENSIONS_PRESENT(&mysql->options);
diff --git a/databases/mysql80-server/files/patch-sql_auth_sql__authorization.cc b/databases/mysql80-server/files/patch-sql_auth_sql__authorization.cc
new file mode 100644
index 000000000000..4d35279882d5
--- /dev/null
+++ b/databases/mysql80-server/files/patch-sql_auth_sql__authorization.cc
@@ -0,0 +1,13 @@
+--- sql/auth/sql_authorization.cc.orig 2023-03-16 17:22:37 UTC
++++ sql/auth/sql_authorization.cc
+@@ -7430,6 +7430,10 @@ bool operator==(const Role_id &a, const std::string &b
+ return tmp == b;
+ }
+
++bool operator==(const Role_id &a, const LEX_CSTRING &b) {
++ return a == to_string(b);
++}
++
+ bool operator==(const std::pair<Role_id, bool> &a, const std::string &b) {
+ return a.first == b;
+ }
diff --git a/databases/mysql80-server/files/patch-sql_binlog.cc b/databases/mysql80-server/files/patch-sql_binlog.cc
deleted file mode 100644
index 6c51f7bf8a61..000000000000
--- a/databases/mysql80-server/files/patch-sql_binlog.cc
+++ /dev/null
@@ -1,24 +0,0 @@
---- sql/binlog.cc.orig 2021-03-22 08:44:50 UTC
-+++ sql/binlog.cc
-@@ -9156,8 +9156,8 @@ void MYSQL_BIN_LOG::report_missing_purged_gtids(
-
- char *missing_gtids = NULL;
- char *slave_executed_gtids = NULL;
-- gtid_missing.to_string(&missing_gtids, NULL);
-- slave_executed_gtid_set->to_string(&slave_executed_gtids, NULL);
-+ gtid_missing.to_string(&missing_gtids);
-+ slave_executed_gtid_set->to_string(&slave_executed_gtids);
-
- /*
- Log the information about the missing purged GTIDs to the error log.
-@@ -9210,8 +9210,8 @@ void MYSQL_BIN_LOG::report_missing_gtids(
- Gtid_set gtid_missing(slave_executed_gtid_set->get_sid_map());
- gtid_missing.add_gtid_set(slave_executed_gtid_set);
- gtid_missing.remove_gtid_set(previous_gtid_set);
-- gtid_missing.to_string(&missing_gtids, NULL);
-- slave_executed_gtid_set->to_string(&slave_executed_gtids, NULL);
-+ gtid_missing.to_string(&missing_gtids);
-+ slave_executed_gtid_set->to_string(&slave_executed_gtids);
-
- String tmp_uuid;
-
diff --git a/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc b/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc
index edcba63dec28..8f5d99aa45b4 100644
--- a/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc
+++ b/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc
@@ -1,6 +1,6 @@
---- sql/conn_handler/socket_connection.cc.orig 2019-09-20 08:30:51 UTC
+--- sql/conn_handler/socket_connection.cc.orig 2021-12-17 16:07:27 UTC
+++ sql/conn_handler/socket_connection.cc
-@@ -950,9 +950,11 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC
+@@ -953,9 +953,11 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC
signal(SIGCHLD, SIG_DFL);
request_init(&req, RQ_DAEMON, libwrap_name, RQ_FILE,
mysql_socket_getfd(connect_sock), NULL);
@@ -14,7 +14,7 @@
/*
This may be stupid but refuse() includes an exit(0)
which we surely don't want...
-@@ -964,12 +966,13 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC
+@@ -967,12 +969,13 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC
This is unproblematic as TCP-wrapper is unix specific,
anyway.
*/
diff --git a/databases/mysql80-server/files/patch-sql_mysqld.cc b/databases/mysql80-server/files/patch-sql_mysqld.cc
index 39a7fb89844a..484af751b704 100644
--- a/databases/mysql80-server/files/patch-sql_mysqld.cc
+++ b/databases/mysql80-server/files/patch-sql_mysqld.cc
@@ -1,6 +1,6 @@
---- sql/mysqld.cc.orig 2019-09-20 08:30:51 UTC
+--- sql/mysqld.cc.orig 2022-07-06 21:36:34 UTC
+++ sql/mysqld.cc
-@@ -5109,7 +5109,7 @@ static int init_thread_environment() {
+@@ -5299,7 +5299,7 @@ static int init_thread_environment() {
static PSI_memory_key key_memory_openssl = PSI_NOT_INSTRUMENTED;
@@ -9,18 +9,3 @@
#define FILE_LINE_ARGS
#else
#define FILE_LINE_ARGS , const char *, int
-@@ -5143,12 +5143,14 @@ static void init_ssl() {
- }
-
- static int init_ssl_communication() {
-+#ifndef LIBRESSL_VERSION_NUMBER
- char ssl_err_string[OPENSSL_ERROR_LENGTH] = {'\0'};
- int ret_fips_mode = set_fips_mode(opt_ssl_fips_mode, ssl_err_string);
- if (ret_fips_mode != 1) {
- LogErr(ERROR_LEVEL, ER_SSL_FIPS_MODE_ERROR, ssl_err_string);
- return 1;
- }
-+#endif /* LIBRESSL_VERSION_NUMBER */
- if (TLS_channel::singleton_init(&mysql_main, mysql_main_channel, opt_use_ssl,
- &server_main_callback, opt_initialize))
- return 1;
diff --git a/databases/mysql80-server/files/patch-sql_ssl__init__callback.cc b/databases/mysql80-server/files/patch-sql_ssl__init__callback.cc
new file mode 100644
index 000000000000..33f3d0645524
--- /dev/null
+++ b/databases/mysql80-server/files/patch-sql_ssl__init__callback.cc
@@ -0,0 +1,36 @@
+--- sql/ssl_init_callback.cc.orig 2021-12-17 16:07:27 UTC
++++ sql/ssl_init_callback.cc
+@@ -106,14 +106,14 @@ static Sys_var_charptr Sys_ssl_capath(
+
+ static Sys_var_charptr Sys_tls_version(
+ "tls_version",
+-#ifdef HAVE_TLSv13
++#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
+ "TLS version, permitted values are TLSv1.2, TLSv1.3",
+ #else
+ "TLS version, permitted values are TLSv1.2",
+ #endif
+ PERSIST_AS_READONLY GLOBAL_VAR(opt_tls_version),
+ CMD_LINE(REQUIRED_ARG, OPT_TLS_VERSION), IN_FS_CHARSET,
+-#ifdef HAVE_TLSv13
++#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
+ "TLSv1.2,TLSv1.3",
+ #else
+ "TLSv1.2",
+@@ -175,14 +175,14 @@ static Sys_var_charptr Sys_admin_ssl_capath(
+
+ static Sys_var_charptr Sys_admin_tls_version(
+ "admin_tls_version",
+-#ifdef HAVE_TLSv13
++#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
+ "TLS version for --admin-port, permitted values are TLSv1.2, TLSv1.3",
+ #else
+ "TLS version for --admin-port, permitted values are TLSv1.2",
+ #endif
+ PERSIST_AS_READONLY GLOBAL_VAR(opt_admin_tls_version),
+ CMD_LINE(REQUIRED_ARG, OPT_TLS_VERSION), IN_FS_CHARSET,
+-#ifdef HAVE_TLSv13
++#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
+ "TLSv1.2,TLSv1.3",
+ #else
+ "TLSv1.2",
diff --git a/databases/mysql80-server/files/patch-sql_sys__vars.cc b/databases/mysql80-server/files/patch-sql_sys__vars.cc
index 9c12715fd6df..39f72484c0bd 100644
--- a/databases/mysql80-server/files/patch-sql_sys__vars.cc
+++ b/databases/mysql80-server/files/patch-sql_sys__vars.cc
@@ -1,6 +1,6 @@
---- sql/sys_vars.cc.orig 2019-09-20 08:30:51 UTC
+--- sql/sys_vars.cc.orig 2022-07-06 21:36:34 UTC
+++ sql/sys_vars.cc
-@@ -1875,7 +1875,7 @@ static Sys_var_ulong Sys_connect_timeout(
+@@ -2039,7 +2039,7 @@ static Sys_var_ulong Sys_connect_timeout(
"The number of seconds the mysqld server is waiting for a connect "
"packet before responding with 'Bad handshake'",
GLOBAL_VAR(connect_timeout), CMD_LINE(REQUIRED_ARG),
@@ -9,7 +9,7 @@
static Sys_var_ulong Sys_information_schema_stats_expiry(
"information_schema_stats_expiry",
-@@ -2929,7 +2929,7 @@ static Sys_var_ulong Sys_net_read_timeout(
+@@ -3189,7 +3189,7 @@ static Sys_var_ulong Sys_net_read_timeout(
"Number of seconds to wait for more data from a connection before "
"aborting the read",
SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG),
@@ -18,7 +18,7 @@
NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(nullptr),
ON_UPDATE(fix_net_read_timeout));
-@@ -2950,7 +2950,7 @@ static Sys_var_ulong Sys_net_write_timeout(
+@@ -3210,7 +3210,7 @@ static Sys_var_ulong Sys_net_write_timeout(
"Number of seconds to wait for a block to be written to a connection "
"before aborting the write",
SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG),
@@ -27,44 +27,3 @@
NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(nullptr),
ON_UPDATE(fix_net_write_timeout));
-@@ -4459,6 +4459,7 @@ static Sys_var_ulong Sys_max_execution_time(
- HINT_UPDATEABLE SESSION_VAR(max_execution_time), CMD_LINE(REQUIRED_ARG),
- VALID_RANGE(0, ULONG_MAX), DEFAULT(0), BLOCK_SIZE(1));
-
-+#ifndef LIBRESSL_VERSION_NUMBER
- static bool update_fips_mode(sys_var *, THD *, enum_var_type) {
- char ssl_err_string[OPENSSL_ERROR_LENGTH] = {'\0'};
- if (set_fips_mode(opt_ssl_fips_mode, ssl_err_string) != 1) {
-@@ -4470,14 +4471,30 @@ static bool update_fips_mode(sys_var *, THD *, enum_va
- }
- }
-
-+#endif
-+
-+#if defined(LIBRESSL_VERSION_NUMBER)
-+static const char *ssl_fips_mode_names[] = {"OFF", 0};
-+#else
- static const char *ssl_fips_mode_names[] = {"OFF", "ON", "STRICT", nullptr};
-+#endif
- static Sys_var_enum Sys_ssl_fips_mode(
- "ssl_fips_mode",
- "SSL FIPS mode (applies only for OpenSSL); "
-- "permitted values are: OFF, ON, STRICT",
-+#ifndef LIBRESSL_VERSION_NUMBER
-+ "permitted values are: OFF, ON, STRICT",
-+#else
-+ "permitted values are: OFF",
-+#endif
- GLOBAL_VAR(opt_ssl_fips_mode), CMD_LINE(REQUIRED_ARG, OPT_SSL_FIPS_MODE),
- ssl_fips_mode_names, DEFAULT(0), NO_MUTEX_GUARD, NOT_IN_BINLOG,
-- ON_CHECK(nullptr), ON_UPDATE(update_fips_mode), nullptr);
-+ ON_CHECK(NULL),
-+#ifndef LIBRESSL_VERSION_NUMBER
-+ ON_UPDATE(update_fips_mode),
-+#else
-+ ON_UPDATE(NULL),
-+#endif
-+ NULL);
-
- static Sys_var_bool Sys_auto_generate_certs(
- "auto_generate_certs",
diff --git a/databases/mysql80-server/files/patch-ssl__init__callback.cc b/databases/mysql80-server/files/patch-ssl__init__callback.cc
deleted file mode 100644
index 2d80cf5e6c78..000000000000
--- a/databases/mysql80-server/files/patch-ssl__init__callback.cc
+++ /dev/null
@@ -1,20 +0,0 @@
---- sql/ssl_init_callback.cc.orig 2020-12-11 07:42:20 UTC
-+++ sql/ssl_init_callback.cc
-@@ -88,7 +88,7 @@ static Sys_var_charptr Sys_tls_version(
- "TLS version, permitted values are TLSv1, TLSv1.1, TLSv1.2, TLSv1.3",
- PERSIST_AS_READONLY GLOBAL_VAR(opt_tls_version),
- CMD_LINE(REQUIRED_ARG, OPT_TLS_VERSION), IN_FS_CHARSET,
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- "TLSv1,TLSv1.1,TLSv1.2,TLSv1.3",
- #else
- "TLSv1,TLSv1.1,TLSv1.2",
-@@ -154,7 +154,7 @@ static Sys_var_charptr Sys_admin_tls_version(
- "TLSv1.2, TLSv1.3",
- PERSIST_AS_READONLY GLOBAL_VAR(opt_admin_tls_version),
- CMD_LINE(REQUIRED_ARG, OPT_TLS_VERSION), IN_FS_CHARSET,
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- "TLSv1,TLSv1.1,TLSv1.2,TLSv1.3",
- #else
- "TLSv1,TLSv1.1,TLSv1.2",
diff --git a/databases/mysql80-server/files/patch-storage_innobase_include_ut0crc32.h b/databases/mysql80-server/files/patch-storage_innobase_include_ut0crc32.h
new file mode 100644
index 000000000000..8ecb999b0221
--- /dev/null
+++ b/databases/mysql80-server/files/patch-storage_innobase_include_ut0crc32.h
@@ -0,0 +1,12 @@
+--- storage/innobase/include/ut0crc32.h.orig 2023-11-27 21:02:58.728994000 +0100
++++ storage/innobase/include/ut0crc32.h 2023-11-27 21:04:10.010362000 +0100
+@@ -132,7 +132,9 @@ CRC32_DEFAULT
+ #endif /* CRC32_ARM64 */
+
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __FreeBSD__
+ #include <asm/hwcap.h>
++#endif /* __FreeBSD__ */
+ #include <sys/auxv.h>
+ #endif /* CRC32_ARM64_DEFAULT */
+
diff --git a/databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc b/databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc
new file mode 100644
index 000000000000..fabd5664cf94
--- /dev/null
+++ b/databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc
@@ -0,0 +1,104 @@
+--- storage/innobase/ut/crc32.cc.orig 2023-11-18 19:47:31.364606000 +0100
++++ storage/innobase/ut/crc32.cc 2023-11-18 20:51:42.956171000 +0100
+@@ -332,8 +332,25 @@ bool can_use_poly_mul() { return true; }
+ #endif /* CRC32_ARM64_APPLE */
+
+ #ifdef CRC32_ARM64_DEFAULT
++#ifdef __FreeBSD__
++bool can_use_crc32() {
++ unsigned long capabilities;
++
++ if (elf_aux_info(AT_HWCAP, &capabilities, sizeof(unsigned long)))
++ return false;
++ return capabilities & HWCAP_CRC32;
++}
++bool can_use_poly_mul() {
++ unsigned long capabilities;
++
++ if (elf_aux_info(AT_HWCAP, &capabilities, sizeof(unsigned long)))
++ return false;
++ return capabilities & HWCAP_CRC32;
++}
++#else
+ bool can_use_crc32() { return getauxval(AT_HWCAP) & HWCAP_CRC32; }
+ bool can_use_poly_mul() { return getauxval(AT_HWCAP) & HWCAP_PMULL; }
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+
+ /** A helper template to statically unroll a loop with a fixed number of
+@@ -442,25 +459,39 @@ uint64_t crc32_impl::update(uint64_t crc, uint64_t dat
+
+ #ifdef CRC32_ARM64
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __clang__
+ MY_ATTRIBUTE((target("+crc")))
++#else
++MY_ATTRIBUTE((target("crc")))
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+ uint32_t crc32_impl::update(uint32_t crc, unsigned char data) {
+ return __crc32cb(crc, data);
+ }
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __clang__
+ MY_ATTRIBUTE((target("+crc")))
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+ uint32_t crc32_impl::update(uint32_t crc, uint16_t data) {
+ return __crc32ch(crc, data);
+ }
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __clang__
+ MY_ATTRIBUTE((target("+crc")))
++#else
++MY_ATTRIBUTE((target("crc")))
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+ uint32_t crc32_impl::update(uint32_t crc, uint32_t data) {
+ return __crc32cw(crc, data);
+ }
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __clang__
+ MY_ATTRIBUTE((target("+crc")))
++#else
++MY_ATTRIBUTE((target("crc")))
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+ uint64_t crc32_impl::update(uint64_t crc, uint64_t data) {
+ return (uint64_t)__crc32cd((uint32_t)crc, data);
+@@ -506,7 +537,11 @@ template <uint32_t w>
+ }
+ template <uint32_t w>
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __clang__
+ MY_ATTRIBUTE((target("+crypto")))
++#else
++MY_ATTRIBUTE((target("crypto")))
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+ uint64_t use_pclmul::polynomial_mul_rev(uint32_t rev_u) {
+ constexpr uint64_t flipped_w = flip_at_32(w);
+@@ -749,7 +784,11 @@ MY_ATTRIBUTE((flatten))
+ MY_ATTRIBUTE((flatten))
+ #endif /* CRC32_ARM64_APPLE */
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __clang__
+ MY_ATTRIBUTE((target("+crc+crypto"), flatten))
++#else
++MY_ATTRIBUTE((target("crc,crypto")))
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+ uint32_t crc32_using_pclmul(const byte *data, size_t len) {
+ return crc32<use_pclmul>(0, data, len);
+@@ -769,7 +808,11 @@ MY_ATTRIBUTE((flatten))
+ MY_ATTRIBUTE((flatten))
+ #endif /* CRC32_ARM64_APPLE */
+ #ifdef CRC32_ARM64_DEFAULT
++#ifndef __clang__
+ MY_ATTRIBUTE((target("+crc"), flatten))
++#else
++MY_ATTRIBUTE((target("crc")))
++#endif
+ #endif /* CRC32_ARM64_DEFAULT */
+ uint32_t crc32_using_unrolled_loop_poly_mul(const byte *data, size_t len) {
+ return crc32<use_unrolled_loop_poly_mul>(0, data, len);
diff --git a/databases/mysql80-server/files/patch-utilities_CMakeLists.txt b/databases/mysql80-server/files/patch-utilities_CMakeLists.txt
index 29c120a41e79..c68cd6aa532d 100644
--- a/databases/mysql80-server/files/patch-utilities_CMakeLists.txt
+++ b/databases/mysql80-server/files/patch-utilities_CMakeLists.txt
@@ -1,8 +1,8 @@
---- utilities/CMakeLists.txt.orig 2020-09-23 12:37:48 UTC
-+++ utilities/CMakeLists.txt
-@@ -23,13 +23,19 @@
- ADD_WSHADOW_WARNING()
+--- utilities/CMakeLists.txt.orig 2023-06-14 08:24:40.103026000 +0200
++++ utilities/CMakeLists.txt 2023-06-22 20:43:33.353592000 +0200
+@@ -24,13 +24,19 @@ MSVC_CPPCHECK_DISABLE()
DISABLE_MISSING_PROFILE_WARNING()
+ MSVC_CPPCHECK_DISABLE()
-IF(NOT CMAKE_CROSSCOMPILING)
+IF(WITHOUT_CLIENTLIBS)
@@ -22,7 +22,7 @@
MYSQL_ADD_EXECUTABLE(comp_client_err
comp_client_err.cc
-@@ -112,10 +118,30 @@ MYSQL_ADD_EXECUTABLE(static_thread_local_test
+@@ -113,10 +119,30 @@ MYSQL_ADD_EXECUTABLE(static_thread_local_test
EXCLUDE_FROM_ALL
)
@@ -53,8 +53,8 @@
)
MYSQL_ADD_EXECUTABLE(perror
perror.cc
-@@ -130,12 +156,23 @@ IF(BUILD_BUNDLED_LZ4)
- LINK_LIBRARIES ${LZ4_LIBRARY} mysys
+@@ -131,12 +157,23 @@ ENDIF()
+ LINK_LIBRARIES ext::lz4 mysys
)
ENDIF()
+ENDIF(WITHOUT_CLIENTLIBS)
@@ -63,7 +63,7 @@
MYSQL_ADD_EXECUTABLE(zlib_decompress
zlib_decompress.cc
COMPONENT Server
- LINK_LIBRARIES ${ZLIB_LIBRARY} mysys
+ LINK_LIBRARIES ext::zlib mysys
+ SKIP_INSTALL )
+ELSE(WITHOUT_CLIENTLIBS)
+IF(BUILD_BUNDLED_ZLIB OR NOT OPENSSL_EXECUTABLE_HAS_ZLIB)
diff --git a/databases/mysql80-server/files/patch-vio_viossl.cc b/databases/mysql80-server/files/patch-vio_viossl.cc
deleted file mode 100644
index e7f2a2a7c952..000000000000
--- a/databases/mysql80-server/files/patch-vio_viossl.cc
+++ /dev/null
@@ -1,30 +0,0 @@
---- vio/viossl.cc.orig 2019-09-20 08:30:51 UTC
-+++ vio/viossl.cc
-@@ -45,7 +45,8 @@
- BIO_set_callback_ex was added in openSSL 1.1.1
- For older openSSL, use the deprecated BIO_set_callback.
- */
--#if OPENSSL_VERSION_NUMBER >= 0x10101000L
-+#if OPENSSL_VERSION_NUMBER >= 0x10101000L && \
-+ !defined(LIBRESSL_VERSION_NUMBER)
- #define HAVE_BIO_SET_CALLBACK_EX
- #endif
-
-@@ -635,7 +636,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, l
- #if !defined(DBUG_OFF)
- {
- STACK_OF(SSL_COMP) *ssl_comp_methods = nullptr;
-- ssl_comp_methods = SSL_COMP_get_compression_methods();
-+ ssl_comp_methods = (STACK_OF(SSL_COMP) *)SSL_COMP_get_compression_methods();
- n = sk_SSL_COMP_num(ssl_comp_methods);
- DBUG_PRINT("info", ("Available compression methods:\n"));
- if (n == 0)
-@@ -643,7 +644,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, l
- else
- 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",
diff --git a/databases/mysql80-server/files/patch-vio_viosslfactories.cc b/databases/mysql80-server/files/patch-vio_viosslfactories.cc
deleted file mode 100644
index 6c0f821e8911..000000000000
--- a/databases/mysql80-server/files/patch-vio_viosslfactories.cc
+++ /dev/null
@@ -1,60 +0,0 @@
---- vio/viosslfactories.cc.orig 2019-09-20 08:30:51 UTC
-+++ vio/viosslfactories.cc
-@@ -40,6 +40,7 @@
- #include "vio/vio_priv.h"
-
- #include <openssl/dh.h>
-+#include <openssl/crypto.h>
-
- #if OPENSSL_VERSION_NUMBER < 0x10002000L
- #include <openssl/ec.h>
-@@ -472,6 +473,7 @@ void ssl_start() {
- }
- }
-
-+#ifndef LIBRESSL_VERSION_NUMBER
- /**
- Set fips mode in openssl library,
- When we set fips mode ON/STRICT, it will perform following operations:
-@@ -525,12 +527,13 @@ EXIT:
- @returns openssl current fips mode
- */
- uint get_fips_mode() { return FIPS_mode(); }
-+#endif
-
- long process_tls_version(const char *tls_version) {
- const char *separator = ",";
- char *token, *lasts = nullptr;
-
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- const char *tls_version_name_list[] = {"TLSv1", "TLSv1.1", "TLSv1.2",
- "TLSv1.3"};
- const char ctx_flag_default[] = "TLSv1,TLSv1.1,TLSv1.2,TLSv1.3";
-@@ -609,7 +612,7 @@ static struct st_VioSSLFd *new_VioSSLFd(
- ssl_ctx_options = (ssl_ctx_options | ssl_ctx_flags) &
- (SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 |
- SSL_OP_NO_TLSv1_1 | SSL_OP_NO_TLSv1_2
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- | SSL_OP_NO_TLSv1_3
- #endif /* HAVE_TLSv13 */
- | SSL_OP_NO_TICKET);
-@@ -618,7 +621,7 @@ static struct st_VioSSLFd *new_VioSSLFd(
- return nullptr;
-
- if (!(ssl_fd->ssl_context = SSL_CTX_new(is_client ?
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- TLS_client_method()
- : TLS_server_method()
- #else /* HAVE_TLSv13 */
-@@ -633,7 +636,7 @@ static struct st_VioSSLFd *new_VioSSLFd(
- return nullptr;
- }
-
--#ifdef HAVE_TLSv13
-+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER)
- /*
- Set OpenSSL TLS v1.3 ciphersuites.
- Note that an empty list is permissible.
diff --git a/databases/mysql80-server/pkg-descr b/databases/mysql80-server/pkg-descr
index b23ead6c68a0..4893ba6f2444 100644
--- a/databases/mysql80-server/pkg-descr
+++ b/databases/mysql80-server/pkg-descr
@@ -10,6 +10,3 @@ The new features in MySQL 8.0. In addition to Data Dictionnary and CTEs are:
Performance Schema, instrumenting data locks
Performance Schema, instrumenting error messages
Improved cost model with histograms
-
-
-WWW: https://www.mysql.com/
diff --git a/databases/mysql80-server/pkg-plist b/databases/mysql80-server/pkg-plist
index fea5ce5c8a63..f9dbff562f49 100644
--- a/databases/mysql80-server/pkg-plist
+++ b/databases/mysql80-server/pkg-plist
@@ -6,7 +6,6 @@ bin/myisam_ftdump
bin/myisamchk
bin/myisamlog
bin/myisampack
-bin/mysqldumpslow
bin/mysql_client_test
bin/mysql_keyring_encryption_test
bin/mysql_secure_installation
@@ -15,6 +14,7 @@ bin/mysql_tzinfo_to_sql
bin/mysql_upgrade
bin/mysqld_multi
bin/mysqld_safe
+bin/mysqldumpslow
bin/mysqlrouter
bin/mysqlrouter_keyring
bin/mysqlrouter_passwd
@@ -31,6 +31,8 @@ lib/mysql/libmysqlharness_tls.so
lib/mysql/libmysqlharness_tls.so.1
lib/mysql/libmysqlrouter.so
lib/mysql/libmysqlrouter.so.1
+lib/mysql/libmysqlrouter_connection_pool.so.1
+lib/mysql/libmysqlrouter_destination_status.so.1
lib/mysql/libmysqlrouter_http.so
lib/mysql/libmysqlrouter_http.so.1
lib/mysql/libmysqlrouter_http_auth_backend.so
@@ -39,6 +41,11 @@ lib/mysql/libmysqlrouter_http_auth_realm.so
lib/mysql/libmysqlrouter_http_auth_realm.so.1
lib/mysql/libmysqlrouter_io_component.so
lib/mysql/libmysqlrouter_io_component.so.1
+lib/mysql/libmysqlrouter_metadata_cache.so.1
+lib/mysql/libmysqlrouter_mysqlxmessages.so.1
+lib/mysql/libmysqlrouter_routing.so.1
+lib/mysql/mysqlrouter/connection_pool.so
+lib/mysql/mysqlrouter/destination_status.so
lib/mysql/mysqlrouter/http_auth_backend.so
lib/mysql/mysqlrouter/http_auth_realm.so
lib/mysql/mysqlrouter/http_server.so
@@ -46,6 +53,7 @@ lib/mysql/mysqlrouter/io.so
lib/mysql/mysqlrouter/keepalive.so
lib/mysql/mysqlrouter/metadata_cache.so
lib/mysql/mysqlrouter/rest_api.so
+lib/mysql/mysqlrouter/rest_connection_pool.so
lib/mysql/mysqlrouter/rest_metadata_cache.so
lib/mysql/mysqlrouter/rest_router.so
lib/mysql/mysqlrouter/rest_routing.so
@@ -55,6 +63,7 @@ lib/mysql/mysqlrouter/routing.so
lib/mysql/plugin/adt_null.so
lib/mysql/plugin/auth.so
lib/mysql/plugin/auth_test_plugin.so
+lib/mysql/plugin/conflicting_variables.so
lib/mysql/plugin/component_audit_api_message_emit.so
lib/mysql/plugin/component_example_component1.so
lib/mysql/plugin/component_example_component2.so
@@ -74,10 +83,16 @@ lib/mysql/plugin/component_test_audit_api_message.so
lib/mysql/plugin/component_test_backup_lock_service.so
lib/mysql/plugin/component_test_component_deinit.so
lib/mysql/plugin/component_test_host_application_signal.so
+lib/mysql/plugin/component_test_mysql_command_services.so
lib/mysql/plugin/component_test_mysql_current_thread_reader.so
lib/mysql/plugin/component_test_mysql_runtime_error.so
+lib/mysql/plugin/component_test_mysql_system_variable_set.so
+lib/mysql/plugin/component_test_mysql_thd_store_service.so
lib/mysql/plugin/component_test_pfs_notification.so
lib/mysql/plugin/component_test_pfs_resource_group.so
+lib/mysql/plugin/component_test_sensitive_system_variables.so
+lib/mysql/plugin/component_test_server_telemetry_traces.so
+lib/mysql/plugin/component_test_status_var_reader.so
lib/mysql/plugin/component_test_status_var_service.so
lib/mysql/plugin/component_test_status_var_service_int.so
lib/mysql/plugin/component_test_status_var_service_reg_only.so
@@ -91,6 +106,7 @@ lib/mysql/plugin/component_test_sys_var_service_int.so
lib/mysql/plugin/component_test_sys_var_service_same.so
lib/mysql/plugin/component_test_sys_var_service_str.so
lib/mysql/plugin/component_test_system_variable_source.so
+lib/mysql/plugin/component_test_table_access.so
lib/mysql/plugin/component_test_udf_registration.so
@comment lib/mysql/plugin/component_test_udf_services.so
lib/mysql/plugin/component_udf_reg_3_func.so
@@ -149,8 +165,11 @@ lib/mysql/plugin/replication_observers_example_plugin.so
lib/mysql/plugin/rewrite_example.so
lib/mysql/plugin/rewriter.so
lib/mysql/plugin/semisync_master.so
+lib/mysql/plugin/semisync_replica.so
lib/mysql/plugin/semisync_slave.so
+lib/mysql/plugin/semisync_source.so
lib/mysql/plugin/test_security_context.so
+lib/mysql/plugin/test_services_command_services.so
lib/mysql/plugin/test_services_host_application_signal.so
lib/mysql/plugin/test_services_plugin_registry.so
lib/mysql/plugin/udf_example.so
@@ -158,26 +177,29 @@ lib/mysql/plugin/keyring_udf.so
lib/mysql/plugin/test_udf_services.so
lib/mysql/plugin/validate_password.so
lib/mysql/plugin/version_token.so
+lib/mysql/private/libprotobuf-lite.so.3.19.4
+lib/mysql/private/libprotobuf.so.3.19.4
+lib/mysql/libprotobuf-lite.so.3.19.4
libexec/mysqld
-man/man1/ibd2sdi.1.gz
-man/man1/innochecksum.1.gz
-man/man1/my_print_defaults.1.gz
-man/man1/myisam_ftdump.1.gz
-man/man1/myisamchk.1.gz
-man/man1/myisamlog.1.gz
-man/man1/myisampack.1.gz
-man/man1/mysql_secure_installation.1.gz
-man/man1/mysql_ssl_rsa_setup.1.gz
-man/man1/mysql_tzinfo_to_sql.1.gz
-man/man1/mysql_upgrade.1.gz
-man/man1/mysql.server.1.gz
-man/man1/mysqld_multi.1.gz
-man/man1/mysqld_safe.1.gz
-man/man1/mysqldumpslow.1.gz
-man/man1/mysqlrouter_passwd.1.gz
-man/man1/mysqlrouter_plugin_info.1.gz
-man/man1/mysqlrouter.1.gz
-man/man8/mysqld.8.gz
+@comment share/man/man1/ibd2sdi.1.gz
+@comment share/man/man1/innochecksum.1.gz
+@comment share/man/man1/my_print_defaults.1.gz
+@comment share/man/man1/myisam_ftdump.1.gz
+@comment share/man/man1/myisamchk.1.gz
+@comment share/man/man1/myisamlog.1.gz
+@comment share/man/man1/myisampack.1.gz
+@comment share/man/man1/mysql_secure_installation.1.gz
+@comment share/man/man1/mysql_ssl_rsa_setup.1.gz
+@comment share/man/man1/mysql_tzinfo_to_sql.1.gz
+@comment share/man/man1/mysql_upgrade.1.gz
+@comment share/man/man1/mysql.server.1.gz
+@comment share/man/man1/mysqld_multi.1.gz
+@comment share/man/man1/mysqld_safe.1.gz
+@comment share/man/man1/mysqldumpslow.1.gz
+@comment share/man/man1/mysqlrouter_passwd.1.gz
+@comment share/man/man1/mysqlrouter_plugin_info.1.gz
+@comment share/man/man1/mysqlrouter.1.gz
+@comment share/man/man8/mysqld.8.gz
%%DATADIR%%/bulgarian/errmsg.sys
%%DATADIR%%/charsets/Index.xml
%%DATADIR%%/charsets/README