diff --git a/databases/mysql80-client/Makefile b/databases/mysql80-client/Makefile index 5c61a5f64139..57ea54fb66e6 100644 --- a/databases/mysql80-client/Makefile +++ b/databases/mysql80-client/Makefile @@ -1,50 +1,50 @@ PORTNAME= mysql -PORTREVISION= 4 +PORTREVISION= 0 PKGNAMESUFFIX= 80-client COMMENT= Multithreaded SQL database (client) LICENSE+= LGPL21 MASTERDIR= ${.CURDIR}/../mysql80-server PKGMESSAGE= ${.CURDIR}/pkg-message PATCHDIR= ${MASTERDIR}/files PLIST= ${.CURDIR}/pkg-plist CONFLICTS_INSTALL= mysql8[1-9]-client \ mysql[0-79][0-9]-client \ mariadb[0-9][0-9]-client \ percona[0-9][0-9]-client CMAKE_ARGS+= -DWITHOUT_SERVER=1 -DINSTALL_SUPPORTFILESDIR=0 USE_LDCONFIG+= ${PREFIX}/lib/mysql MMAN1= comp_err.1 lz4_decompress.1 mysql.1 mysql_config.1 mysql_config_editor.1 \ mysqladmin.1 mysqlbinlog.1 mysqlcheck.1 mysqldump.1 mysqlimport.1 mysqlman.1 \ mysqlpump.1 mysqlshow.1 mysqlslap.1 perror.1 zlib_decompress.1 CLIENT_ONLY= yes OPTIONS_GROUP+= PLUGINS PLUGINS_DESC= Default Client Plugins OPTIONS_GROUP_PLUGINS= SASLCLIENT SASLCLIENT_DESC= SASL client plugin module SASLCLIENT_CMAKE_BOOL= WITH_AUTHENTICATION_LDAP SASLCLIENT_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2 SASLCLIENT_USES= ldap OPTIONS_DEFAULT+= SASLCLIENT OPTIONS_SUB= yes # issue 166367: adding symlinks for back-compatibility with ${lib}_r post-install: # @${RM} ${STAGEDIR}${PREFIX}/lib/mysql/private/libprotobuf-lite.so.3.19.4 # @${RM} ${STAGEDIR}${PREFIX}/lib/mysql/private/libprotobuf.so.3.19.4 @${RM} -r ${STAGEDIR}${PREFIX}/lib/mysql/private @${LN} -s libmysqlclient.a ${STAGEDIR}${PREFIX}/lib/mysql/libmysqlclient_r.a @${LN} -s libmysqlclient.so ${STAGEDIR}${PREFIX}/lib/mysql/libmysqlclient_r.so @${LN} -s libmysqlclient.so.21 ${STAGEDIR}${PREFIX}/lib/mysql/libmysqlclient_r.so.21 .include "${MASTERDIR}/Makefile" diff --git a/databases/mysql80-server/Makefile b/databases/mysql80-server/Makefile index b9ac590666bf..999ce104ac0a 100644 --- a/databases/mysql80-server/Makefile +++ b/databases/mysql80-server/Makefile @@ -1,215 +1,215 @@ PORTNAME?= mysql -PORTVERSION= 8.0.33 -PORTREVISION?= 1 +PORTVERSION= 8.0.35 +PORTREVISION?= 0 CATEGORIES= databases MASTER_SITES= MYSQL/MySQL-8.0 PKGNAMESUFFIX?= 80-server 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 cpe groff:run libedit localbase \ ncurses perl5 pkgconfig shebangfix ssl CPE_VENDOR= oracle USE_CXXSTD= c++17 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 \ libicutu.so:devel/icu \ liblz4.so:archivers/liblz4 \ 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 BUILD_DEPENDS= liblz4>0:archivers/liblz4 \ ${BUILD_DEPENDS_${ARCH}} 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 CFLAGS_aarch64?= -march=armv8-a+crc+crypto 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_PRIV_LIBDIR="lib/mysql/private" \ -DINSTALL_MANDIR="share/man" \ -DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \ -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring" \ -DINSTALL_MYSQLSHAREDIR="share/mysql" \ -DINSTALL_MYSQLTESTDIR="" \ -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_SYSTEM_LIBS=1 \ -DWITH_EDITLINE=system \ -DWITH_LIBEVENT=system \ -DWITH_LZ4=system \ -DWITH_ICU=system \ -DWITH_CURL=system \ -DWITH_ZSTD=bundled \ -DWITH_PROTOBUF=bundled \ -DWITH_SSL=system \ -DWITH_AUTHENTICATION_FIDO=1 \ -DBUILD_BUNDLED_ZLIB=0 \ -DBUILD_BUNDLED_LZ4=0 # The Mroonga, RocksDB, and TokuDB storage engines are disabled. # Mroonga is only buildable on little endian archs. # RocksDB is only buildable on little endian archs and requires POSIX timers. # TokuDB is only buildable on 64-bit little endian archs. CMAKE_ARGS+= -DWITHOUT_MROONGA_STORAGE_ENGINE=1 \ -DWITHOUT_ROCKSDB_STORAGE_ENGINE=1 \ -DWITHOUT_TOKUDB_STORAGE_ENGINE=1 SHEBANG_FILES= scripts/*.pl* scripts/*.sh .ifdef USE_MYSQL IGNORE= 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} \ MYSQL80_LIBVER=${MYSQL80_LIBVER} # MySQL-Server part .if !defined(CLIENT_ONLY) USES+= mysql:80 CONFLICTS_INSTALL= mysql*-server \ mysqlwsrep*-server \ mariadb*-server \ percona*-server USE_RC_SUBR= mysql-server SUB_FILES= my.cnf.sample pkg-message USERS= mysql GROUPS= mysql USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin MMAN1= ibd2sdi.1 innochecksum.1 my_print_defaults.1 myisam_ftdump.1 myisamchk.1 \ myisamlog.1 myisampack.1 mysql_secure_installation.1 mysql_ssl_rsa_setup.1 \ mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql.server.1 mysqldumpslow.1 mysqld_multi.1 \ mysqld_safe.1 mysqlrouter_passwd.1 mysqlrouter_plugin_info.1 mysqlrouter.1 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 OPTIONS_SUB= YES STORAGE_DESC= Permissible "Storage Engines" (to compile statically into the server) ARCHIVE_DESC= Compile "Archive Storage" statically in server BLACKHOLE_DESC= Compile "Blackhole Storage" statically in server EXAMPLE_DESC= Compile "Example Storage" statically in server FEDERATED_DESC= Compile "Federated Storage" statically in server INNOBASE_DESC= Compile "InnoDB Storage" statically in server PARTITION_DESC= Compile "Partitioning support Storage" statically in server PERFSCHEMA_DESC= Compile "Performance Schema Storage" statically in server ARCHIVE_CMAKE_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1 BLACKHOLE_CMAKE_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1 EXAMPLE_CMAKE_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1 FEDERATED_CMAKE_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1 INNOBASE_CMAKE_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1 PARTITION_CMAKE_ON= -DWITH_PARTITION_STORAGE_ENGINE=1 PERFSCHEMA_CMAKE_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 OPTIONS_GROUP+= FEATURES OPTIONS_GROUP_FEATURES= PERFSCHM FEATURES_DESC= Default features knobs PERFSCHM_DESC= Enable "Performance Schema" by default (High RAM usage) OPTIONS_DEFAULT+= PERFSCHM PERFSCHM_SUB_LIST+= PERFSCHEMRC="" PERFSCHM_SUB_LIST_OFF+= PERFSCHEMRC="--skip-performance-schema" FEDERATED_SUB_LIST+= FEDER="--federated" FEDERATED_SUB_LIST_OFF+= FEDER="" .endif .include # Since 8.0.20 release innodb engine uses new memory alligned allocator # 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 SSP_UNSAFE= yes .endif .if ${ARCH} == powerpc LDFLAGS+= -latomic USES+= compiler:gcc-c++11-lib .else CXXFLAGS+= -malign-double USES+= compiler:c++17-lang .endif .include post-extract: @${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h # This can be removed after FreeBSD 12.4 and 13.1 EoL .if defined(CLIENT_ONLY) && !exists(${OPENSSLBASE}/libdata/pkgconfig/openssl.pc) EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-scripts_CMakeLists.txt .endif .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 diff --git a/databases/mysql80-server/distinfo b/databases/mysql80-server/distinfo index 05b98badd3de..bc0a2dd68ade 100644 --- a/databases/mysql80-server/distinfo +++ b/databases/mysql80-server/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1686677589 -SHA256 (mysql-boost-8.0.33.tar.gz) = ae31e6368617776b43c82436c3736900067fada1289032f3ac3392f7380bcb58 -SIZE (mysql-boost-8.0.33.tar.gz) = 438065679 +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/patch-router_src_harness_src_tls__server__context.cc b/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc index 72866c631fd2..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,13 +1,12 @@ ---- router/src/harness/src/tls_server_context.cc.orig 2023-06-29 15:05:27.686865000 +0200 -+++ router/src/harness/src/tls_server_context.cc 2023-06-29 15:31:25.869049000 +0200 -@@ -275,7 +275,9 @@ stdx::expected set_auto_dh_para - #if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(3, 0, 0) - SSL_CTX_set_dh_auto(ssl_ctx, 1); - #else +--- 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 { + } + + 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) -+ - int sec_level = SSL_CTX_get_security_level(ssl_ctx); + int sec_level = SSL_CTX_get_security_level(ssl_ctx_.get()); assert(sec_level <= kMaxSecurityLevel); diff --git a/databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc b/databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc index 0e42c96a1843..fabd5664cf94 100644 --- a/databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc +++ b/databases/mysql80-server/files/patch-storage_innobase_ut_crc32.cc @@ -1,114 +1,104 @@ ---- storage/innobase/ut/crc32.cc.orig 2021-12-17 17:07:27 UTC -+++ storage/innobase/ut/crc32.cc -@@ -111,7 +111,9 @@ external tools. */ - #endif /* CRC32_ARM64 */ - - #ifdef CRC32_ARM64_DEFAULT -+#ifndef __FreeBSD__ - #include -+#endif - #include - #endif /* CRC32_ARM64_DEFAULT */ - -@@ -360,8 +362,25 @@ bool can_use_poly_mul() { return true; } +--- 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 -@@ -470,25 +489,39 @@ uint64_t crc32_impl::update(uint64_t crc, uint64_t dat +@@ -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); -@@ -534,7 +567,11 @@ static inline uint64_t less_significant_half_of_poly12 +@@ -506,7 +537,11 @@ template } template #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); -@@ -777,7 +814,11 @@ MY_ATTRIBUTE((target("sse4.2,pclmul"), flatten)) +@@ -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(0, data, len); -@@ -797,7 +838,11 @@ MY_ATTRIBUTE((target("sse4.2"), flatten)) +@@ -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(0, data, len); diff --git a/databases/mysql80-server/files/patch-vio_viosslfactories.cc b/databases/mysql80-server/files/patch-vio_viosslfactories.cc index 2882353d79f0..4951cc995df3 100644 --- a/databases/mysql80-server/files/patch-vio_viosslfactories.cc +++ b/databases/mysql80-server/files/patch-vio_viosslfactories.cc @@ -1,46 +1,46 @@ ---- vio/viosslfactories.cc.orig 2022-07-06 21:36:34 UTC -+++ vio/viosslfactories.cc -@@ -40,6 +40,7 @@ - #include "vio/vio_priv.h" +--- vio/viosslfactories.cc.orig 2023-11-18 20:56:37.098235000 +0100 ++++ vio/viosslfactories.cc 2023-11-19 09:20:02.284708000 +0100 +@@ -43,6 +43,7 @@ + #include - #include -+#include + #include "my_openssl_fips.h" ++#include "openssl/crypto.h" + #define TLS_VERSION_OPTION_SIZE 256 - #if OPENSSL_VERSION_NUMBER < 0x10002000L - #include -@@ -484,7 +485,7 @@ long process_tls_version(const char *tls_version) { + /* +@@ -417,7 +418,7 @@ 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.2", "TLSv1.3"}; const char ctx_flag_default[] = "TLSv1.2,TLSv1.3"; const long tls_ctx_list[] = {SSL_OP_NO_TLSv1_2, SSL_OP_NO_TLSv1_3}; -@@ -559,7 +560,7 @@ static struct st_VioSSLFd *new_VioSSLFd( +@@ -489,7 +490,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); -@@ -568,7 +569,7 @@ static struct st_VioSSLFd *new_VioSSLFd( +@@ -498,7 +499,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 */ -@@ -583,7 +584,7 @@ static struct st_VioSSLFd *new_VioSSLFd( +@@ -513,7 +514,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.