Received: by mail.netbsd.org (Postfix, from userid 605) id B214C84DC7; Fri, 6 Sep 2019 10:01:46 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 3632D84DB6 for ; Fri, 6 Sep 2019 10:01:46 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([IPv6:::1]) by localhost (mail.netbsd.org [IPv6:::1]) (amavisd-new, port 10025) with ESMTP id KqZD8DfqPYg1 for ; Fri, 6 Sep 2019 10:01:45 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.NetBSD.org [IPv6:2001:470:a085:999:28c:faff:fe03:5984]) by mail.netbsd.org (Postfix) with ESMTP id 021C384DAA for ; Fri, 6 Sep 2019 10:01:45 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id EA321FBF4; Fri, 6 Sep 2019 10:01:44 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_1567764104184030" MIME-Version: 1.0 Date: Fri, 6 Sep 2019 10:01:44 +0000 From: "Takahiro Kambe" Subject: CVS commit: pkgsrc/databases/mysql56-client To: pkgsrc-changes@NetBSD.org Reply-To: taca@netbsd.org X-Mailer: log_accum Message-Id: <20190906100144.EA321FBF4@cvs.NetBSD.org> Sender: pkgsrc-changes-owner@NetBSD.org List-Id: pkgsrc-changes.NetBSD.org Precedence: bulk List-Unsubscribe: This is a multi-part message in MIME format. --_----------=_1567764104184030 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: taca Date: Fri Sep 6 10:01:44 UTC 2019 Modified Files: pkgsrc/databases/mysql56-client: distinfo pkgsrc/databases/mysql56-client/patches: patch-include_my_net.h Added Files: pkgsrc/databases/mysql56-client/patches: patch-include_m__string.h patch-mysys__ssl_my__aes__openssl.cc patch-sql_mysqld.cc patch-sql_rpl__slave.cc patch-storage_innobase_include_univ.i patch-vio_vio.c patch-vio_viosslfactories.c Log Message: databases/mysql56-client: allow build with OpenSSL 1.1.x * Allow mysql56-{client,server} build with OpenSSL 1.1.x. * Reduce a few useless warnings. To generate a diff of this commit: cvs rdiff -u -r1.52 -r1.53 pkgsrc/databases/mysql56-client/distinfo cvs rdiff -u -r0 -r1.1 \ pkgsrc/databases/mysql56-client/patches/patch-include_m__string.h \ pkgsrc/databases/mysql56-client/patches/patch-mysys__ssl_my__aes__openssl.cc \ pkgsrc/databases/mysql56-client/patches/patch-storage_innobase_include_univ.i cvs rdiff -u -r1.1 -r1.2 \ pkgsrc/databases/mysql56-client/patches/patch-include_my_net.h cvs rdiff -u -r0 -r1.5 \ pkgsrc/databases/mysql56-client/patches/patch-sql_mysqld.cc cvs rdiff -u -r0 -r1.3 \ pkgsrc/databases/mysql56-client/patches/patch-sql_rpl__slave.cc \ pkgsrc/databases/mysql56-client/patches/patch-vio_vio.c \ pkgsrc/databases/mysql56-client/patches/patch-vio_viosslfactories.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_1567764104184030 Content-Disposition: inline Content-Length: 17407 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Modified files: Index: pkgsrc/databases/mysql56-client/distinfo diff -u pkgsrc/databases/mysql56-client/distinfo:1.52 pkgsrc/databases/mysql56-client/distinfo:1.53 --- pkgsrc/databases/mysql56-client/distinfo:1.52 Tue Aug 6 06:55:15 2019 +++ pkgsrc/databases/mysql56-client/distinfo Fri Sep 6 10:01:44 2019 @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.52 2019/08/06 06:55:15 adam Exp $ +$NetBSD: distinfo,v 1.53 2019/09/06 10:01:44 taca Exp $ SHA1 (mysql-5.6.45.tar.gz) = f42901c8d52297912da4978ec9422458cff72071 RMD160 (mysql-5.6.45.tar.gz) = c711161babd1b8f9b7f96d88264a468972a83a0b @@ -22,19 +22,23 @@ SHA1 (patch-cmake_ssl.cmake) = a5a25b000 SHA1 (patch-cmd-line-utils_libedit_chartype.h) = 6b1453df648001ed1fc81190106e15872a69a04c SHA1 (patch-cmd-line-utils_libedit_vi.c) = 7c5ce1d07f650815d028e435a59e5d078ec74c2f SHA1 (patch-include_CMakeLists.txt) = 49d351a958e63c69ad8bfe5c50961fe3751e86c4 +SHA1 (patch-include_m__string.h) = 1622466a65c61a4ab0838bd80f6c24c061407eaf SHA1 (patch-include_my__global.h) = 843b9527faf880eee59cf02239ba601f5985ddfb SHA1 (patch-include_my_compare.h) = f45bac4b488332a668b0005751856279b67401f5 -SHA1 (patch-include_my_net.h) = b08aa36921efd023f9ecaac4cd3fb8a16d200abd +SHA1 (patch-include_my_net.h) = 8d97e4396fd1df095798fca79cc07daffff449d3 SHA1 (patch-include_my_pthread.h) = ff3bf1fddd04edd7804d810f79de64387464b5ca SHA1 (patch-libmysql_CMakeLists.txt) = 229044de6d11b26ee99b25be99b628a9f146b795 SHA1 (patch-mysql-test_CMakeLists.txt) = b7dd562d55678b13ac487aa0ee59bf2551af1f9d SHA1 (patch-mysys__ssl_CMakeLists.txt) = e50bad459520be78ea2d5c4d0699cda8c1141884 +SHA1 (patch-mysys__ssl_my__aes__openssl.cc) = c6bcab27d992f90f7929cb697a7c7565671ebb6f SHA1 (patch-mysys_stacktrace.c) = 27ddd012c9ca299cfe2b9935b9f99fe603415e7e SHA1 (patch-scripts_CMakeLists.txt) = 5b44d2d137e3e64474d663a8faab5b5f289f4cf5 SHA1 (patch-scripts_mysql__install__db.pl.in) = c2ed1705a530a0f2dfb8325496ceb7e2a9c98185 SHA1 (patch-scripts_mysqld_safe.sh) = 0784314227657aa0bc3f4a0b4e21c173a86fa94b SHA1 (patch-sql_CMakeLists.txt) = 83c1e50de6b53a0af5ff010f248dd595745b3eb5 SHA1 (patch-sql_log_event.h) = a413038ffa29103c75e1d243864615ccb3d9621e +SHA1 (patch-sql_mysqld.cc) = 953ea6b1178e5d139446bc45a96730a9de9051e3 +SHA1 (patch-sql_rpl__slave.cc) = cc231060d7b8c1efe230c324fb7dfee90b058589 SHA1 (patch-sql_sql_string.h) = 1ce4d4db59310ea45e384f34e33c0d61935059bf SHA1 (patch-sql_sys__vars.cc) = 355b17dac8da6f94c9996ae406df304113a1f8f5 SHA1 (patch-storage_archive_CMakeLists.txt) = e739ef4884a154d7e33e8aae24234fd6855119b7 @@ -43,7 +47,10 @@ SHA1 (patch-storage_csv_CMakeLists.txt) SHA1 (patch-storage_example_CMakeLists.txt) = a80b1dd3c6020b3fe958db35bebe3bd181136f0d SHA1 (patch-storage_federated_CMakeLists.txt) = f809504bad63129a06ce455b49ee40cca940891e SHA1 (patch-storage_heap_CMakeLists.txt) = 0a1a5a7b5e83f14cec43bfa4782dd4bb7b629347 +SHA1 (patch-storage_innobase_include_univ.i) = eb305029b8529cab88c80d75821fc9940e0f6b0b SHA1 (patch-storage_myisam_CMakeLists.txt) = 55897ae78208f78a396776d1082cb5f98631fff8 SHA1 (patch-storage_myisammrg_CMakeLists.txt) = 0a56a16ccaff3fa9de996fec6ffc324af9855a4e SHA1 (patch-storage_ndb_include_util_Parser.hpp) = 037fc153619bf79ee95cb03a5ac4a71c14952c3a SHA1 (patch-strings_decimal.c) = 069c9d930c735f74510702baa9bef38aec425903 +SHA1 (patch-vio_vio.c) = 33914d1a3c8d9c7b4b83ba0b9be97c007137a7cd +SHA1 (patch-vio_viosslfactories.c) = 0ec8e17abb5419f49a9fc803c374da70306b5e3a Index: pkgsrc/databases/mysql56-client/patches/patch-include_my_net.h diff -u pkgsrc/databases/mysql56-client/patches/patch-include_my_net.h:1.1 pkgsrc/databases/mysql56-client/patches/patch-include_my_net.h:1.2 --- pkgsrc/databases/mysql56-client/patches/patch-include_my_net.h:1.1 Wed Feb 13 21:00:04 2013 +++ pkgsrc/databases/mysql56-client/patches/patch-include_my_net.h Fri Sep 6 10:01:44 2019 @@ -1,10 +1,11 @@ -$NetBSD: patch-include_my_net.h,v 1.1 2013/02/13 21:00:04 adam Exp $ +$NetBSD: patch-include_my_net.h,v 1.2 2019/09/06 10:01:44 taca Exp $ -Define SHUT_RDWR for Irix 5. +* Define SHUT_RDWR for Irix 5. +* Stop useless warnings. ---- include/my_net.h.orig 2013-01-22 16:54:49.000000000 +0000 +--- include/my_net.h.orig 2019-06-10 10:25:32.000000000 +0000 +++ include/my_net.h -@@ -70,6 +70,15 @@ C_MODE_START +@@ -70,14 +70,25 @@ C_MODE_START #include /* getaddrinfo() & co */ #endif @@ -20,3 +21,13 @@ Define SHUT_RDWR for Irix 5. /* On OSes which don't have the in_addr_t, we guess that using uint32 is the best possible choice. We guess this from the fact that on HP-UX64bit & FreeBSD64bit + & Solaris64bit, in_addr_t is equivalent to uint32. And on Linux32bit too. + */ + #ifndef HAVE_IN_ADDR_T ++#ifndef in_addr_t + #define in_addr_t uint32 + #endif ++#endif + + + C_MODE_END Added files: Index: pkgsrc/databases/mysql56-client/patches/patch-include_m__string.h diff -u /dev/null pkgsrc/databases/mysql56-client/patches/patch-include_m__string.h:1.1 --- /dev/null Fri Sep 6 10:01:44 2019 +++ pkgsrc/databases/mysql56-client/patches/patch-include_m__string.h Fri Sep 6 10:01:44 2019 @@ -0,0 +1,16 @@ +$NetBSD: patch-include_m__string.h,v 1.1 2019/09/06 10:01:44 taca Exp $ + +* Stop useless warnings. + +--- include/m_string.h.orig 2019-06-10 10:25:32.000000000 +0000 ++++ include/m_string.h +@@ -43,7 +43,9 @@ + #endif + + #define bfill please_use_memset_rather_than_bfill() ++#ifndef bzero + #define bzero please_use_memset_rather_than_bzero() ++#endif + + #if !defined(HAVE_MEMCPY) && !defined(HAVE_MEMMOVE) + # define memcpy(d, s, n) bcopy ((s), (d), (n)) Index: pkgsrc/databases/mysql56-client/patches/patch-mysys__ssl_my__aes__openssl.cc diff -u /dev/null pkgsrc/databases/mysql56-client/patches/patch-mysys__ssl_my__aes__openssl.cc:1.1 --- /dev/null Fri Sep 6 10:01:44 2019 +++ pkgsrc/databases/mysql56-client/patches/patch-mysys__ssl_my__aes__openssl.cc Fri Sep 6 10:01:44 2019 @@ -0,0 +1,118 @@ +$NetBSD: patch-mysys__ssl_my__aes__openssl.cc,v 1.1 2019/09/06 10:01:44 taca Exp $ + +* Allow build with OpenSSL 1.1. + +--- mysys_ssl/my_aes_openssl.cc.orig 2019-06-10 10:25:32.000000000 +0000 ++++ mysys_ssl/my_aes_openssl.cc +@@ -108,33 +108,46 @@ int my_aes_encrypt(const unsigned char * + const unsigned char *key, uint32 key_length, + enum my_aes_opmode mode, const unsigned char *iv) + { +- EVP_CIPHER_CTX ctx; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ EVP_CIPHER_CTX stack_ctx; ++ EVP_CIPHER_CTX *ctx= &stack_ctx; ++#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ EVP_CIPHER_CTX *ctx= EVP_CIPHER_CTX_new(); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + const EVP_CIPHER *cipher= aes_evp_type(mode); + int u_len, f_len; + /* The real key to be used for encryption */ + unsigned char rkey[MAX_AES_KEY_LENGTH / 8]; + my_aes_create_key(key, key_length, rkey, mode); + +- if (!cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) ++ if (!ctx || !cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) + return MY_AES_BAD_DATA; + +- if (!EVP_EncryptInit(&ctx, cipher, rkey, iv)) ++ if (!EVP_EncryptInit(ctx, cipher, rkey, iv)) + goto aes_error; /* Error */ +- if (!EVP_CIPHER_CTX_set_padding(&ctx, 1)) ++ if (!EVP_CIPHER_CTX_set_padding(ctx, 1)) + goto aes_error; /* Error */ +- if (!EVP_EncryptUpdate(&ctx, dest, &u_len, source, source_length)) ++ if (!EVP_EncryptUpdate(ctx, dest, &u_len, source, source_length)) + goto aes_error; /* Error */ + +- if (!EVP_EncryptFinal(&ctx, dest + u_len, &f_len)) ++ if (!EVP_EncryptFinal(ctx, dest + u_len, &f_len)) + goto aes_error; /* Error */ + +- EVP_CIPHER_CTX_cleanup(&ctx); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ EVP_CIPHER_CTX_cleanup(ctx); ++#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ EVP_CIPHER_CTX_free(ctx); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + return u_len + f_len; + + aes_error: + /* need to explicitly clean up the error if we want to ignore it */ + ERR_clear_error(); +- EVP_CIPHER_CTX_cleanup(&ctx); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ EVP_CIPHER_CTX_cleanup(ctx); ++#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ EVP_CIPHER_CTX_free(ctx); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + return MY_AES_BAD_DATA; + } + +@@ -145,7 +158,12 @@ int my_aes_decrypt(const unsigned char * + enum my_aes_opmode mode, const unsigned char *iv) + { + +- EVP_CIPHER_CTX ctx; ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ EVP_CIPHER_CTX stack_ctx; ++ EVP_CIPHER_CTX *ctx= &stack_ctx; ++#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ EVP_CIPHER_CTX *ctx= EVP_CIPHER_CTX_new(); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + const EVP_CIPHER *cipher= aes_evp_type(mode); + int u_len, f_len; + +@@ -153,27 +171,33 @@ int my_aes_decrypt(const unsigned char * + unsigned char rkey[MAX_AES_KEY_LENGTH / 8]; + + my_aes_create_key(key, key_length, rkey, mode); +- if (!cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) ++ if (!ctx || !cipher || (EVP_CIPHER_iv_length(cipher) > 0 && !iv)) + return MY_AES_BAD_DATA; + +- EVP_CIPHER_CTX_init(&ctx); +- +- if (!EVP_DecryptInit(&ctx, aes_evp_type(mode), rkey, iv)) ++ if (!EVP_DecryptInit(ctx, aes_evp_type(mode), rkey, iv)) + goto aes_error; /* Error */ +- if (!EVP_CIPHER_CTX_set_padding(&ctx, 1)) ++ if (!EVP_CIPHER_CTX_set_padding(ctx, 1)) + goto aes_error; /* Error */ +- if (!EVP_DecryptUpdate(&ctx, dest, &u_len, source, source_length)) ++ if (!EVP_DecryptUpdate(ctx, dest, &u_len, source, source_length)) + goto aes_error; /* Error */ +- if (!EVP_DecryptFinal_ex(&ctx, dest + u_len, &f_len)) ++ if (!EVP_DecryptFinal_ex(ctx, dest + u_len, &f_len)) + goto aes_error; /* Error */ + +- EVP_CIPHER_CTX_cleanup(&ctx); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ EVP_CIPHER_CTX_cleanup(ctx); ++#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ EVP_CIPHER_CTX_free(ctx); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + return u_len + f_len; + + aes_error: + /* need to explicitly clean up the error if we want to ignore it */ + ERR_clear_error(); +- EVP_CIPHER_CTX_cleanup(&ctx); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ EVP_CIPHER_CTX_cleanup(ctx); ++#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ EVP_CIPHER_CTX_free(ctx); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + return MY_AES_BAD_DATA; + } + Index: pkgsrc/databases/mysql56-client/patches/patch-storage_innobase_include_univ.i diff -u /dev/null pkgsrc/databases/mysql56-client/patches/patch-storage_innobase_include_univ.i:1.1 --- /dev/null Fri Sep 6 10:01:44 2019 +++ pkgsrc/databases/mysql56-client/patches/patch-storage_innobase_include_univ.i Fri Sep 6 10:01:44 2019 @@ -0,0 +1,16 @@ +$NetBSD: patch-storage_innobase_include_univ.i,v 1.1 2019/09/06 10:01:44 taca Exp $ + +* Stop another useless warnings. + +--- storage/innobase/include/univ.i.orig 2019-06-10 10:25:32.000000000 +0000 ++++ storage/innobase/include/univ.i +@@ -123,7 +123,9 @@ Sun Studio */ + #endif /* #if (defined(WIN32) || ... */ + + #ifndef __WIN__ ++#ifndef __STDC_FORMAT_MACROS + #define __STDC_FORMAT_MACROS /* Enable C99 printf format macros */ ++#endif + #include + #endif /* !__WIN__ */ + Index: pkgsrc/databases/mysql56-client/patches/patch-sql_mysqld.cc diff -u /dev/null pkgsrc/databases/mysql56-client/patches/patch-sql_mysqld.cc:1.5 --- /dev/null Fri Sep 6 10:01:44 2019 +++ pkgsrc/databases/mysql56-client/patches/patch-sql_mysqld.cc Fri Sep 6 10:01:44 2019 @@ -0,0 +1,42 @@ +$NetBSD: patch-sql_mysqld.cc,v 1.5 2019/09/06 10:01:44 taca Exp $ + +* Allow build with OpenSSL 1.1. + +--- sql/mysqld.cc.orig 2019-06-10 10:25:32.000000000 +0000 ++++ sql/mysqld.cc +@@ -2759,9 +2759,9 @@ bool one_thread_per_connection_end(THD * + } + + // Clean up errors now, before possibly waiting for a new connection. +-#ifndef EMBEDDED_LIBRARY +- ERR_remove_state(0); +-#endif ++#if !defined(EMBEDDED_LIBRARY) && OPENSSL_VERSION_NUMBER < 0x10100000L ++ ERR_remove_thread_state(0); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + + delete thd; + +@@ -4358,7 +4358,11 @@ static int init_ssl() + { + #ifdef HAVE_OPENSSL + #ifndef HAVE_YASSL ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_malloc_init(); ++#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ OPENSSL_malloc_init(); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + #endif + ssl_start(); + #ifndef EMBEDDED_LIBRARY +@@ -4372,7 +4376,9 @@ static int init_ssl() + opt_ssl_cipher, &error, + opt_ssl_crl, opt_ssl_crlpath); + DBUG_PRINT("info",("ssl_acceptor_fd: 0x%lx", (long) ssl_acceptor_fd)); +- ERR_remove_state(0); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ ERR_remove_thread_state(0); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + if (!ssl_acceptor_fd) + { + sql_print_warning("Failed to setup SSL"); Index: pkgsrc/databases/mysql56-client/patches/patch-sql_rpl__slave.cc diff -u /dev/null pkgsrc/databases/mysql56-client/patches/patch-sql_rpl__slave.cc:1.3 --- /dev/null Fri Sep 6 10:01:44 2019 +++ pkgsrc/databases/mysql56-client/patches/patch-sql_rpl__slave.cc Fri Sep 6 10:01:44 2019 @@ -0,0 +1,39 @@ +$NetBSD: patch-sql_rpl__slave.cc,v 1.3 2019/09/06 10:01:44 taca Exp $ + +* Allow build with OpenSSL 1.1. + +--- sql/rpl_slave.cc.orig 2019-06-10 10:25:32.000000000 +0000 ++++ sql/rpl_slave.cc +@@ -5143,7 +5143,9 @@ err: + mysql_mutex_unlock(&mi->run_lock); + DBUG_LEAVE; // Must match DBUG_ENTER() + my_thread_end(); +- ERR_remove_state(0); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ ERR_remove_thread_state(0); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + pthread_exit(0); + return(0); // Avoid compiler warnings + } +@@ -5334,7 +5336,9 @@ err: + } + + my_thread_end(); +- ERR_remove_state(0); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ ERR_remove_thread_state(0); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + pthread_exit(0); + DBUG_RETURN(0); + } +@@ -6482,7 +6486,9 @@ log '%s' at position %s, relay log '%s' + + DBUG_LEAVE; // Must match DBUG_ENTER() + my_thread_end(); +- ERR_remove_state(0); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ ERR_remove_thread_state(0); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + pthread_exit(0); + return 0; // Avoid compiler warnings + } Index: pkgsrc/databases/mysql56-client/patches/patch-vio_vio.c diff -u /dev/null pkgsrc/databases/mysql56-client/patches/patch-vio_vio.c:1.3 --- /dev/null Fri Sep 6 10:01:44 2019 +++ pkgsrc/databases/mysql56-client/patches/patch-vio_vio.c Fri Sep 6 10:01:44 2019 @@ -0,0 +1,17 @@ +$NetBSD: patch-vio_vio.c,v 1.3 2019/09/06 10:01:44 taca Exp $ + +* Allow build with OpenSSL 1.1. + +--- vio/vio.c.orig 2019-06-10 10:25:32.000000000 +0000 ++++ vio/vio.c +@@ -384,7 +384,9 @@ void vio_end(void) + yaSSL_CleanUp(); + #elif defined(HAVE_OPENSSL) + // This one is needed on the client side +- ERR_remove_state(0); ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ ERR_remove_thread_state(0); ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + ERR_free_strings(); + EVP_cleanup(); + CRYPTO_cleanup_all_ex_data(); Index: pkgsrc/databases/mysql56-client/patches/patch-vio_viosslfactories.c diff -u /dev/null pkgsrc/databases/mysql56-client/patches/patch-vio_viosslfactories.c:1.3 --- /dev/null Fri Sep 6 10:01:44 2019 +++ pkgsrc/databases/mysql56-client/patches/patch-vio_viosslfactories.c Fri Sep 6 10:01:44 2019 @@ -0,0 +1,44 @@ +$NetBSD: patch-vio_viosslfactories.c,v 1.3 2019/09/06 10:01:44 taca Exp $ + +* Allow build with OpenSSL 1.1. + +--- vio/viosslfactories.c.orig 2019-06-10 10:25:32.000000000 +0000 ++++ vio/viosslfactories.c +@@ -68,13 +68,21 @@ static DH *get_dh2048(void) + DH *dh; + if ((dh=DH_new())) + { +- dh->p=BN_bin2bn(dh2048_p,sizeof(dh2048_p),NULL); +- dh->g=BN_bin2bn(dh2048_g,sizeof(dh2048_g),NULL); +- if (! dh->p || ! dh->g) +- { ++ BIGNUM *p= BN_bin2bn(dh2048_p, sizeof(dh2048_p), NULL); ++ BIGNUM *g= BN_bin2bn(dh2048_g, sizeof(dh2048_g), NULL); ++ if (!p || !g ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++ || !DH_set0_pqg(dh, p, NULL, g) ++#endif /* OPENSSL_VERSION_NUMBER >= 0x10100000L */ ++ ) { ++ /* DH_free() will free 'p' and 'g' at once. */ + DH_free(dh); +- dh=0; ++ return NULL; + } ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ dh->p= p; ++ dh->g= g; ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ + } + return(dh); + } +@@ -230,8 +238,8 @@ new_VioSSLFd(const char *key_file, const + DBUG_RETURN(0); + + if (!(ssl_fd->ssl_context= SSL_CTX_new(is_client ? +- TLSv1_client_method() : +- TLSv1_server_method()))) ++ SSLv23_client_method() : ++ SSLv23_server_method()))) + { + *error= SSL_INITERR_MEMFAIL; + DBUG_PRINT("error", ("%s", sslGetErrString(*error))); --_----------=_1567764104184030--