Hello community,

here is the log from the commit of package mariadb-connector-c for 
openSUSE:Factory checked in at 2019-09-30 15:51:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mariadb-connector-c (Old)
 and      /work/SRC/openSUSE:Factory/.mariadb-connector-c.new.2352 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "mariadb-connector-c"

Mon Sep 30 15:51:57 2019 rev:20 rq:732948 version:3.1.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/mariadb-connector-c/mariadb-connector-c.changes  
2019-08-15 12:25:34.450603590 +0200
+++ 
/work/SRC/openSUSE:Factory/.mariadb-connector-c.new.2352/mariadb-connector-c.changes
        2019-09-30 15:51:58.782401305 +0200
@@ -1,0 +2,9 @@
+Tue Sep 24 10:59:32 UTC 2019 - Kristyna Streitova <[email protected]>
+
+- New upstream version 3.1.4
+  * CONC-431: Use windows crypto libraries on Windows platforms
+  * Included in MariaDB 10.4.8, MariaDB 10.3.18, and MariaDB 10.2.27
+- refresh mariadb-connector-c-2.3.1_unresolved_symbols.patch and
+  private_library.patch
+
+-------------------------------------------------------------------

Old:
----
  mariadb-connector-c-3.1.3-src.tar.gz
  mariadb-connector-c-3.1.3-src.tar.gz.asc

New:
----
  mariadb-connector-c-3.1.4-src.tar.gz
  mariadb-connector-c-3.1.4-src.tar.gz.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ mariadb-connector-c.spec ++++++
--- /var/tmp/diff_new_pack.wjDuPp/_old  2019-09-30 15:51:59.222400133 +0200
+++ /var/tmp/diff_new_pack.wjDuPp/_new  2019-09-30 15:51:59.226400123 +0200
@@ -25,7 +25,7 @@
 %endif
 %bcond_with sqlite3
 Name:           mariadb-connector-c
-Version:        3.1.3
+Version:        3.1.4
 Release:        0
 Summary:        MariaDB connector in C
 License:        LGPL-2.1-or-later

++++++ mariadb-connector-c-2.3.1_unresolved_symbols.patch ++++++
--- /var/tmp/diff_new_pack.wjDuPp/_old  2019-09-30 15:51:59.258400037 +0200
+++ /var/tmp/diff_new_pack.wjDuPp/_new  2019-09-30 15:51:59.262400027 +0200
@@ -1,8 +1,8 @@
-Index: mariadb-connector-c-3.1.2-src/plugins/auth/CMakeLists.txt
+Index: mariadb-connector-c-3.1.4-src/plugins/auth/CMakeLists.txt
 ===================================================================
---- mariadb-connector-c-3.1.2-src.orig/plugins/auth/CMakeLists.txt
-+++ mariadb-connector-c-3.1.2-src/plugins/auth/CMakeLists.txt
-@@ -16,7 +16,8 @@ REGISTER_PLUGIN(TARGET dialog
+--- mariadb-connector-c-3.1.4-src.orig/plugins/auth/CMakeLists.txt
++++ mariadb-connector-c-3.1.4-src/plugins/auth/CMakeLists.txt
+@@ -32,7 +32,8 @@ REGISTER_PLUGIN(TARGET dialog
                  CONFIGURATIONS DYNAMIC STATIC OFF
                  DEFAULT DYNAMIC
                  SOURCES ${CC_SOURCE_DIR}/plugins/auth/dialog.c
@@ -10,5 +10,5 @@
 +                        ${CC_SOURCE_DIR}/libmariadb/get_password.c
 +                LIBRARIES dl)
  
- #ED25519 client authentication plugin
- SET(REF10_DIR ${CC_SOURCE_DIR}/plugins/auth/ref10)
+ 
+ # Crypto plugins

++++++ mariadb-connector-c-3.1.3-src.tar.gz -> 
mariadb-connector-c-3.1.4-src.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mariadb-connector-c-3.1.3-src/CMakeLists.txt 
new/mariadb-connector-c-3.1.4-src/CMakeLists.txt
--- old/mariadb-connector-c-3.1.3-src/CMakeLists.txt    2019-07-25 
16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/CMakeLists.txt    2019-09-03 
14:48:10.000000000 +0200
@@ -36,7 +36,7 @@
 
 SET(CPACK_PACKAGE_VERSION_MAJOR 3)
 SET(CPACK_PACKAGE_VERSION_MINOR 1)
-SET(CPACK_PACKAGE_VERSION_PATCH 3)
+SET(CPACK_PACKAGE_VERSION_PATCH 4)
 SET(CPACK_PACKAGE_VERSION 
"${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
 MATH(EXPR MARIADB_PACKAGE_VERSION_ID "${CPACK_PACKAGE_VERSION_MAJOR} * 10000 +
                             ${CPACK_PACKAGE_VERSION_MINOR} * 100   +
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mariadb-connector-c-3.1.3-src/cmake/install.cmake 
new/mariadb-connector-c-3.1.4-src/cmake/install.cmake
--- old/mariadb-connector-c-3.1.3-src/cmake/install.cmake       2019-07-25 
16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/cmake/install.cmake       2019-09-03 
14:48:10.000000000 +0200
@@ -65,7 +65,10 @@
 SET(INSTALL_PCDIR_DEFAULT "lib/pkgconfig")
 SET(INSTALL_INCLUDEDIR_DEFAULT "include/mariadb")
 SET(INSTALL_DOCDIR_DEFAULT "docs")
-SET(INSTALL_PLUGINDIR_DEFAULT "lib/mariadb/plugin")
+IF(NOT IS_SUBPROJECT)
+  SET(INSTALL_PLUGINDIR_DEFAULT "lib/mariadb/plugin")
+ELSE()
+ENDIF()
 SET(LIBMARIADB_STATIC_DEFAULT "mariadbclient")
 #
 # RPM layout
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mariadb-connector-c-3.1.3-src/include/ma_crypt.h 
new/mariadb-connector-c-3.1.4-src/include/ma_crypt.h
--- old/mariadb-connector-c-3.1.3-src/include/ma_crypt.h        2019-07-25 
16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/include/ma_crypt.h        2019-09-03 
14:48:10.000000000 +0200
@@ -44,14 +44,7 @@
 #define MA_MAX_HASH_SIZE 64
 /** \typedef MRL hash context */
 
-#if defined(HAVE_OPENSSL)
-typedef void MA_HASH_CTX;
-#elif defined(HAVE_GNUTLS)
-typedef struct {
-  void *ctx;
-  const struct nettle_hash *hash;
-} MA_HASH_CTX;
-#elif defined(HAVE_SCHANNEL)
+#if defined(WIN32)
 #include <windows.h>
 #include <bcrypt.h>
 typedef struct {
@@ -61,6 +54,13 @@
   PBYTE hashObject;
   DWORD digest_len;
 } MA_HASH_CTX;
+#elif defined(HAVE_OPENSSL)
+typedef void MA_HASH_CTX;
+#elif defined(HAVE_GNUTLS)
+typedef struct {
+  void *ctx;
+  const struct nettle_hash *hash;
+} MA_HASH_CTX;
 #endif
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mariadb-connector-c-3.1.3-src/include/mariadb_version.h.in 
new/mariadb-connector-c-3.1.4-src/include/mariadb_version.h.in
--- old/mariadb-connector-c-3.1.3-src/include/mariadb_version.h.in      
2019-07-25 16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/include/mariadb_version.h.in      
2019-09-03 14:48:10.000000000 +0200
@@ -24,7 +24,7 @@
 #define MARIADB_PACKAGE_VERSION_ID @MARIADB_PACKAGE_VERSION_ID@
 #define MARIADB_SYSTEM_TYPE "@CMAKE_SYSTEM_NAME@"
 #define MARIADB_MACHINE_TYPE "@CMAKE_SYSTEM_PROCESSOR@"
-#define MARIADB_PLUGINDIR "@PLUGINDIR@"
+#define MARIADB_PLUGINDIR "@CMAKE_INSTALL_PREFIX@/@PLUGINDIR@"
 
 /* mysqld compile time options */
 #ifndef MYSQL_CHARSET
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mariadb-connector-c-3.1.3-src/libmariadb/CMakeLists.txt 
new/mariadb-connector-c-3.1.4-src/libmariadb/CMakeLists.txt
--- old/mariadb-connector-c-3.1.3-src/libmariadb/CMakeLists.txt 2019-07-25 
16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/libmariadb/CMakeLists.txt 2019-09-03 
14:48:10.000000000 +0200
@@ -412,7 +412,7 @@
 
 IF(CMAKE_SYSTEM_NAME MATCHES "Linux" OR
    CMAKE_SYSTEM_NAME MATCHES "GNU")
-  IF (NOT WITH_ASAN AND NOT WITH_TSAN)
+  IF (NOT WITH_ASAN AND NOT WITH_TSAN AND NOT WITH_UBSAN AND NOT WITH_MSAN)
     TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined")
   ENDIF()
   SET_TARGET_PROPERTIES(libmariadb PROPERTIES LINK_FLAGS 
"${CC_BINARY_DIR}/libmariadb/mariadbclient.def")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mariadb-connector-c-3.1.3-src/libmariadb/secure/gnutls.c 
new/mariadb-connector-c-3.1.4-src/libmariadb/secure/gnutls.c
--- old/mariadb-connector-c-3.1.3-src/libmariadb/secure/gnutls.c        
2019-07-25 16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/libmariadb/secure/gnutls.c        
2019-09-03 14:48:10.000000000 +0200
@@ -19,10 +19,10 @@
  
*************************************************************************************/
 #ifdef HAVE_GNUTLS
 
+#include <ma_global.h>
 #include <gnutls/gnutls.h>
 #include <gnutls/x509.h>
 #include <gnutls/abstract.h>
-#include <ma_global.h>
 #include <ma_sys.h>
 #include <ma_common.h>
 #include <ma_pvio.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mariadb-connector-c-3.1.3-src/plugins/auth/CMakeLists.txt 
new/mariadb-connector-c-3.1.4-src/plugins/auth/CMakeLists.txt
--- old/mariadb-connector-c-3.1.3-src/plugins/auth/CMakeLists.txt       
2019-07-25 16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/plugins/auth/CMakeLists.txt       
2019-09-03 14:48:10.000000000 +0200
@@ -3,6 +3,22 @@
 INCLUDE_DIRECTORIES(${AUTH_DIR})
 INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include)
 
+SET(CRYPTO_PLUGIN 1)
+IF(WIN32)
+  SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/win_crypt.c)
+  SET(CRYPT_LIBS crypt32)
+ELSEIF(WITH_SSL STREQUAL "OPENSSL")
+  SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/openssl_crypt.c)
+  SET(CRYPT_LIBS ${SSL_LIBRARIES})
+ELSEIF(WITH_SSL STREQUAL "GNUTLS")
+  SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/gnutls_crypt.c)
+  IF (NOT SSL_LIBRARIES MATCHES "^.*\\.a$")
+    SET(CRYPT_LIBS ${SSL_LIBRARIES})
+  ENDIF()
+ELSE()
+  UNSET(CRYPTO_PLUGIN)
+ENDIF()
+
 #native password
 REGISTER_PLUGIN(TARGET mysql_native_password
                 TYPE MARIADB_CLIENT_PLUGIN_AUTH
@@ -18,30 +34,23 @@
                 SOURCES ${CC_SOURCE_DIR}/plugins/auth/dialog.c
                         ${CC_SOURCE_DIR}/libmariadb/get_password.c)
 
-#ED25519 client authentication plugin
-SET(REF10_DIR ${CC_SOURCE_DIR}/plugins/auth/ref10)
-SET(REF10_SOURCES ${REF10_DIR}/fe_0.c ${REF10_DIR}/fe_isnegative.c 
${REF10_DIR}/fe_sub.c ${REF10_DIR}/ge_p1p1_to_p2.c
-                  ${REF10_DIR}/ge_p3_to_cached.c ${REF10_DIR}/open.c 
${REF10_DIR}/fe_1.c ${REF10_DIR}/fe_isnonzero.c
-                  ${REF10_DIR}/fe_tobytes.c ${REF10_DIR}/ge_p1p1_to_p3.c 
${REF10_DIR}/ge_p3_to_p2.c ${REF10_DIR}/sc_muladd.c
-                  ${REF10_DIR}/fe_add.c ${REF10_DIR}/fe_mul.c 
${REF10_DIR}/ge_add.c ${REF10_DIR}/ge_p2_0.c ${REF10_DIR}/ge_precomp_0.c
-                  ${REF10_DIR}/sc_reduce.c ${REF10_DIR}/fe_cmov.c 
${REF10_DIR}/fe_neg.c ${REF10_DIR}/ge_double_scalarmult.c 
-                  ${REF10_DIR}/ge_p2_dbl.c ${REF10_DIR}/ge_scalarmult_base.c 
${REF10_DIR}/sign.c ${REF10_DIR}/fe_copy.c
-                  ${REF10_DIR}/fe_pow22523.c ${REF10_DIR}/ge_frombytes.c 
${REF10_DIR}/ge_p3_0.c ${REF10_DIR}/ge_sub.c
-                  ${REF10_DIR}/verify.c ${REF10_DIR}/fe_frombytes.c 
${REF10_DIR}/fe_sq2.c ${REF10_DIR}/ge_madd.c
-                  ${REF10_DIR}/ge_p3_dbl.c ${REF10_DIR}/ge_tobytes.c 
${REF10_DIR}/fe_invert.c ${REF10_DIR}/fe_sq.c
-                  ${REF10_DIR}/ge_msub.c ${REF10_DIR}/ge_p3_tobytes.c 
${REF10_DIR}/keypair.c)
-
-IF(WITH_SSL)
-  IF(${WITH_SSL} STREQUAL "OPENSSL")
-    SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/openssl_crypt.c)
-    SET(ED25519_LIBS ${SSL_LIBRARIES})
-  ELSEIF(${WITH_SSL} STREQUAL "SCHANNEL")
-    SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/win_crypt.c)
-    SET(ED_25519_LIBS crypt32)
-  ELSE()
-    SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/gnutls_crypt.c)
-    SET(ED25519_LIBS ${SSL_LIBRARIES})
-  ENDIF()
+
+# Crypto plugins
+IF(CRYPTO_PLUGIN)
+
+  #ED25519 client authentication plugin
+  SET(REF10_DIR ${CC_SOURCE_DIR}/plugins/auth/ref10)
+  SET(REF10_SOURCES ${REF10_DIR}/fe_0.c ${REF10_DIR}/fe_isnegative.c 
${REF10_DIR}/fe_sub.c ${REF10_DIR}/ge_p1p1_to_p2.c
+                    ${REF10_DIR}/ge_p3_to_cached.c ${REF10_DIR}/open.c 
${REF10_DIR}/fe_1.c ${REF10_DIR}/fe_isnonzero.c
+                    ${REF10_DIR}/fe_tobytes.c ${REF10_DIR}/ge_p1p1_to_p3.c 
${REF10_DIR}/ge_p3_to_p2.c ${REF10_DIR}/sc_muladd.c
+                    ${REF10_DIR}/fe_add.c ${REF10_DIR}/fe_mul.c 
${REF10_DIR}/ge_add.c ${REF10_DIR}/ge_p2_0.c ${REF10_DIR}/ge_precomp_0.c
+                    ${REF10_DIR}/sc_reduce.c ${REF10_DIR}/fe_cmov.c 
${REF10_DIR}/fe_neg.c ${REF10_DIR}/ge_double_scalarmult.c 
+                    ${REF10_DIR}/ge_p2_dbl.c ${REF10_DIR}/ge_scalarmult_base.c 
${REF10_DIR}/sign.c ${REF10_DIR}/fe_copy.c
+                    ${REF10_DIR}/fe_pow22523.c ${REF10_DIR}/ge_frombytes.c 
${REF10_DIR}/ge_p3_0.c ${REF10_DIR}/ge_sub.c
+                    ${REF10_DIR}/verify.c ${REF10_DIR}/fe_frombytes.c 
${REF10_DIR}/fe_sq2.c ${REF10_DIR}/ge_madd.c
+                    ${REF10_DIR}/ge_p3_dbl.c ${REF10_DIR}/ge_tobytes.c 
${REF10_DIR}/fe_invert.c ${REF10_DIR}/fe_sq.c
+                    ${REF10_DIR}/ge_msub.c ${REF10_DIR}/ge_p3_tobytes.c 
${REF10_DIR}/keypair.c)
+
   REGISTER_PLUGIN(TARGET client_ed25519
                 TYPE MARIADB_CLIENT_PLUGIN_AUTH
                 CONFIGURATIONS DYNAMIC STATIC OFF
@@ -50,36 +59,37 @@
                         ${REF10_SOURCES}
                         ${CRYPT_SOURCE}
                 INCLUDES ${REF10_DIR}
+                LIBRARIES ${CRYPT_LIBS}
                 COMPILE_OPTIONS -DMYSQL_CLIENT=1)
   IF(MSVC)
      # Silence conversion (integer truncantion) warnings from reference code
      SET_SOURCE_FILES_PROPERTIES(${REF10_SOURCES} PROPERTY COMPILE_FLAGS 
"-DMYSQL_CLIENT=1 /wd4244 /wd4146")
   ENDIF()
-ENDIF()
 
-#GSSAPI client authentication plugin
-IF(NOT WIN32)
-  INCLUDE(${CC_SOURCE_DIR}/cmake/FindGSSAPI.cmake)
-ENDIF()
-# SHA256 caching plugin for MySQL 8.0 connection
-IF(WITH_SSL)
-  IF(${WITH_SSL} STREQUAL "OPENSSL")
-    SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/openssl_crypt.c)
-    SET(CACHING_SHA2_LIBS ${SSL_LIBRARIES})
-  ELSEIF(${WITH_SSL} STREQUAL "SCHANNEL")
-    SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/win_crypt.c)
-    SET(CACHING_SHA2_LIBS crypt32 bcrypt)
-  ELSEIF(${WITH_SSL} STREQUAL "GNUTLS")
-    SET(CRYPT_SOURCE ${CC_SOURCE_DIR}/libmariadb/secure/gnutls_crypt.c)
-    SET(CACHING_SHA2_LIBS ${SSL_LIBRARIES} ${LIBZ})
-  ENDIF()
+  # SHA256 caching plugin for MySQL 8.0 connection
   REGISTER_PLUGIN(TARGET caching_sha2_password
                 TYPE MARIADB_CLIENT_PLUGIN_AUTH
                 CONFIGURATIONS DYNAMIC STATIC OFF
                 DEFAULT DYNAMIC
                 SOURCES ${CC_SOURCE_DIR}/plugins/auth/caching_sha2_pw.c 
                         ${CRYPT_SOURCE}
-                LIBRARIES ${CACHING_SHA2_LIBS})
+                LIBRARIES ${CRYPT_LIBS})
+
+  IF(WITH_SSL STREQUAL "GNUTLS" AND NOT WIN32)
+    MESSAGE1(STATUS "sha256_password not supported by GnuTLS due to missing 
OAEP padding")
+  ELSE()
+    REGISTER_PLUGIN(TARGET sha256_password
+                    TYPE MARIADB_CLIENT_PLUGIN_AUTH
+                    CONFIGURATIONS DYNAMIC STATIC OFF
+                    DEFAULT DYNAMIC
+                    SOURCES ${AUTH_DIR}/sha256_pw.c
+                    LIBRARIES ${CRYT_LIBS})
+  ENDIF()
+ENDIF()
+
+#GSSAPI client authentication plugin
+IF(NOT WIN32)
+  INCLUDE(${CC_SOURCE_DIR}/cmake/FindGSSAPI.cmake)
 ENDIF()
 
 #GSSAPI client authentication plugin
@@ -102,20 +112,6 @@
                   LIBRARIES ${GSSAPI_LIBS})
 ENDIF()
 
-IF(${WITH_SSL} STREQUAL "OPENSSL" OR ${WITH_SSL} STREQUAL "SCHANNEL")
-  IF(WITH_SSL STREQUAL "SCHANNEL")
-    SET(SHA256_LIBS crypt32)
-  ELSE()
-    SET(SHA256_LIBS ${SSL_LIBRARIES})
-  ENDIF()
-  REGISTER_PLUGIN(TARGET sha256_password
-                  TYPE MARIADB_CLIENT_PLUGIN_AUTH
-                  CONFIGURATIONS DYNAMIC STATIC OFF
-                  DEFAULT DYNAMIC
-                  SOURCES ${AUTH_DIR}/sha256_pw.c
-                  LIBRARIES ${SHA256_LIBS})
-ENDIF()
-
 # old_password plugin
 REGISTER_PLUGIN(TARGET mysql_old_password
                 TYPE MARIADB_CLIENT_PLUGIN_AUTH
@@ -123,7 +119,6 @@
                 DEFAULT STATIC
                 SOURCES ${AUTH_DIR}/old_password.c)
 
-
 # Cleartext
 REGISTER_PLUGIN(TARGET mysql_clear_password
                 TYPE MARIADB_CLIENT_PLUGIN_AUTH
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mariadb-connector-c-3.1.3-src/plugins/auth/caching_sha2_pw.c 
new/mariadb-connector-c-3.1.4-src/plugins/auth/caching_sha2_pw.c
--- old/mariadb-connector-c-3.1.3-src/plugins/auth/caching_sha2_pw.c    
2019-07-25 16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/plugins/auth/caching_sha2_pw.c    
2019-09-03 14:48:10.000000000 +0200
@@ -21,15 +21,14 @@
 #endif
 
 #ifdef _WIN32
-#if !defined(HAVE_OPENSSL)
 #define HAVE_WINCRYPT
-#else
+#undef HAVE_OPENSSL
+#undef HAVE_GNUTLS
 #pragma comment(lib, "crypt32.lib")
 #pragma comment(lib, "ws2_32.lib")
 #endif
-#endif
 
-#if defined(HAVE_OPENSSL) || defined(HAVE_SCHANNEL) || defined(HAVE_GNUTLS)
+#if defined(HAVE_OPENSSL) || defined(HAVE_WINCRYPT) || defined(HAVE_GNUTLS)
 
 #include <ma_global.h>
 #include <mysql.h>
@@ -51,7 +50,7 @@
 #include <openssl/err.h>
 #elif defined(HAVE_GNUTLS)
 #include <gnutls/gnutls.h>
-#elif defined(HAVE_SCHANNEL)
+#elif defined(HAVE_WINCRYPT)
 #include <windows.h>
 #include <wincrypt.h>
 #include <bcrypt.h>
@@ -89,7 +88,7 @@
   unsigned char digest1[MA_SHA256_HASH_SIZE],
                 digest2[MA_SHA256_HASH_SIZE],
                 new_scramble[MA_SHA256_HASH_SIZE];
-#ifdef HAVE_SCHANNEL
+#ifdef HAVE_WINCRYPT
   MA_HASH_CTX myctx;
   MA_HASH_CTX *ctx= &myctx;
 #else
@@ -108,7 +107,7 @@
   ma_hash_input(ctx, source, source_len);
   ma_hash_result(ctx, digest1);
   ma_hash_free(ctx);
-#ifndef HAVE_SCHANNEL
+#ifndef HAVE_WINCRYPT
   ctx = NULL;
 #endif
 
@@ -118,7 +117,7 @@
   ma_hash_input(ctx, digest1, MA_SHA256_HASH_SIZE);
   ma_hash_result(ctx, digest2);
   ma_hash_free(ctx);
-#ifndef HAVE_SCHANNEL
+#ifndef HAVE_WINCRYPT
   ctx = NULL;
 #endif
 
@@ -165,11 +164,11 @@
   auth_caching_sha2_client
 };
 
-#ifdef HAVE_SCHANNEL
+#ifdef HAVE_WINCRYPT
 static LPBYTE ma_load_pem(const char *buffer, DWORD *buffer_len)
 {
   LPBYTE der_buffer= NULL;
-  DWORD der_buffer_length;
+  DWORD der_buffer_length= 0;
 
   if (buffer_len == NULL || *buffer_len == 0)
     return NULL;
@@ -257,7 +256,7 @@
 #if defined(HAVE_OPENSSL)
   RSA *pubkey= NULL;
   BIO *bio;
-#elif defined(HAVE_SCHANNEL)
+#elif defined(HAVE_WINCRYPT)
   BCRYPT_KEY_HANDLE pubkey= 0;
   BCRYPT_OAEP_PADDING_INFO paddingInfo;
   LPBYTE der_buffer= NULL;
@@ -351,7 +350,7 @@
       rsa_size= RSA_size(pubkey);
     BIO_free(bio);
     ERR_clear_error();
-#elif defined(HAVE_SCHANNEL)
+#elif defined(HAVE_WINCRYPT)
     der_buffer_len= packet_length;
     /* Load pem and convert it to binary object. New length will be returned
        in der_buffer_len */
@@ -389,7 +388,7 @@
 #if defined(HAVE_OPENSSL)
     if (RSA_public_encrypt(pwlen, (unsigned char *)passwd, rsa_enc_pw, pubkey, 
RSA_PKCS1_OAEP_PADDING) < 0)
       goto error;
-#elif defined(HAVE_SCHANNEL)
+#elif defined(HAVE_WINCRYPT)
     ZeroMemory(&paddingInfo, sizeof(paddingInfo));
     paddingInfo.pszAlgId = BCRYPT_SHA1_ALGORITHM;
     if ((rc= BCryptEncrypt(pubkey, (PUCHAR)passwd, pwlen, &paddingInfo, NULL, 
0, rsa_enc_pw,
@@ -414,7 +413,7 @@
 #if defined(HAVE_OPENSSL)
   if (pubkey)
     RSA_free(pubkey);
-#elif defined(HAVE_SCHANNEL)
+#elif defined(HAVE_WINCRYPT)
   if (pubkey)
     BCryptDestroyKey(pubkey);
   if (publicKeyInfo)
@@ -451,7 +450,7 @@
     int unused3     __attribute__((unused)),
     va_list unused4 __attribute__((unused)))
 {
-#if defined(HAVE_SCHANNEL)
+#if defined(HAVE_WINCRYPT)
   BCryptOpenAlgorithmProvider(&Sha256Prov, BCRYPT_SHA256_ALGORITHM, NULL, 0);
   BCryptOpenAlgorithmProvider(&RsaProv, BCRYPT_RSA_ALGORITHM, NULL, 0);
 #endif
@@ -462,7 +461,7 @@
 /* {{{ auth_caching_sha2_deinit */
 static int auth_caching_sha2_deinit()
 {
-#if defined(HAVE_SCHANNEL)
+#if defined(HAVE_WINCRYPT)
   BCryptCloseAlgorithmProvider(Sha256Prov, 0);
   BCryptCloseAlgorithmProvider(RsaProv, 0);
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mariadb-connector-c-3.1.3-src/plugins/auth/ed25519.c 
new/mariadb-connector-c-3.1.4-src/plugins/auth/ed25519.c
--- old/mariadb-connector-c-3.1.3-src/plugins/auth/ed25519.c    2019-07-25 
16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/plugins/auth/ed25519.c    2019-09-03 
14:48:10.000000000 +0200
@@ -1,5 +1,5 @@
 
/************************************************************************************
-  Copyright (C) 2017 MariaDB Corporation AB
+  Copyright (C) 2017-2019 MariaDB Corporation AB
 
   This library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Library General Public
@@ -21,12 +21,12 @@
 #endif
 
 #ifdef _WIN32
-#if !defined(HAVE_OPENSSL)
 #define HAVE_WINCRYPT
-#endif
+#undef HAVE_OPENSSL
+#undef HAVE_GNUTLS
 #endif
 
-#if defined(HAVE_OPENSSL) || defined(HAVE_SCHANNEL) || defined(HAVE_GNUTLS)
+#if defined(HAVE_OPENSSL) || defined(HAVE_WINCRYPT) || defined(HAVE_GNUTLS)
 
 #include <ma_global.h>
 #include <mysql.h>
@@ -42,19 +42,19 @@
 #include <dlfcn.h>
 #endif
 
-#if defined(HAVE_OPENSSL)
-#include <openssl/rsa.h>
-#include <openssl/pem.h>
-#include <openssl/err.h>
-#elif defined(HAVE_GNUTLS)
-#include <gnutls/gnutls.h>
-#elif defined(HAVE_SCHANNEL)
+#if defined(HAVE_WINCRYPT)
 #include <windows.h>
 #include <wincrypt.h>
 #include <bcrypt.h>
 #pragma comment(lib, "bcrypt.lib")
 #pragma comment(lib, "crypt32.lib")
 extern BCRYPT_ALG_HANDLE Sha512Prov;
+#elif defined(HAVE_OPENSSL)
+#include <openssl/rsa.h>
+#include <openssl/pem.h>
+#include <openssl/err.h>
+#elif defined(HAVE_GNUTLS)
+#include <gnutls/gnutls.h>
 #endif
 
 #include <ref10/api.h>
@@ -71,7 +71,7 @@
 
 
 #ifndef PLUGIN_DYNAMIC
-struct st_mysql_client_plugin_AUTHENTICATION 
caching_sha2_password_client_plugin=
+struct st_mysql_client_plugin_AUTHENTICATION client_ed25519_client_plugin=
 #else
 struct st_mysql_client_plugin_AUTHENTICATION _mysql_client_plugin_declaration_ 
=
 #endif
@@ -126,7 +126,7 @@
     int unused3     __attribute__((unused)),
     va_list unused4 __attribute__((unused)))
 {
-#if defined(HAVE_SCHANNEL)
+#if defined(HAVE_WINCRYPT)
   BCryptOpenAlgorithmProvider(&Sha512Prov, BCRYPT_SHA512_ALGORITHM, NULL, 0);
 #endif
   return 0;
@@ -136,7 +136,7 @@
 /* {{{ auth_ed25519_deinit */
 static int auth_ed25519_deinit()
 {
-#if defined(HAVE_SCHANNEL)
+#if defined(HAVE_WINCRYPT)
   BCryptCloseAlgorithmProvider(Sha512Prov, 0);
 #endif
   return 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mariadb-connector-c-3.1.3-src/plugins/auth/sha256_pw.c 
new/mariadb-connector-c-3.1.4-src/plugins/auth/sha256_pw.c
--- old/mariadb-connector-c-3.1.3-src/plugins/auth/sha256_pw.c  2019-07-25 
16:03:48.000000000 +0200
+++ new/mariadb-connector-c-3.1.4-src/plugins/auth/sha256_pw.c  2019-09-03 
14:48:10.000000000 +0200
@@ -21,13 +21,12 @@
 #endif
 
 #ifdef _WIN32
-#if !defined(HAVE_OPENSSL)
+#undef HAVE_GNUTLS
+#undef HAVE_OPENSSL
 #define HAVE_WINCRYPT
-#else
 #pragma comment(lib, "crypt32.lib")
 #pragma comment(lib, "ws2_32.lib")
 #endif
-#endif
 
 #if defined(HAVE_OPENSSL) || defined(HAVE_WINCRYPT)
 
@@ -45,12 +44,12 @@
 #include <dlfcn.h>
 #endif
 
-#if defined(HAVE_OPENSSL)
+#if defined(WIN32)
+#include <wincrypt.h>
+#elif defined(HAVE_OPENSSL)
 #include <openssl/rsa.h>
 #include <openssl/pem.h>
 #include <openssl/err.h>
-#elif defined(HAVE_WINCRYPT)
-#include <wincrypt.h>
 #endif
 
 #define MAX_PW_LEN 1024
@@ -87,7 +86,7 @@
 static LPBYTE ma_load_pem(const char *buffer, DWORD *buffer_len)
 {
   LPBYTE der_buffer= NULL;
-  DWORD der_buffer_length;
+  DWORD der_buffer_length= 0;
 
   if (buffer_len == NULL || *buffer_len == 0)
     return NULL;
@@ -181,7 +180,7 @@
   DWORD der_buffer_len= 0;
   CERT_PUBLIC_KEY_INFO *publicKeyInfo= NULL;
   DWORD ParamSize= sizeof(DWORD);
-  int publicKeyInfoLen;
+  int publicKeyInfoLen= 0;
 #endif
   char *filebuffer= NULL;
 


++++++ private_library.patch ++++++
--- /var/tmp/diff_new_pack.wjDuPp/_old  2019-09-30 15:51:59.414399623 +0200
+++ /var/tmp/diff_new_pack.wjDuPp/_new  2019-09-30 15:51:59.414399623 +0200
@@ -8,10 +8,10 @@
 exports all symbols. With the exception of exported symbols, it is
 identical to the regular library.
 
-Index: mariadb-connector-c-3.1.3-src/libmariadb/CMakeLists.txt
+Index: mariadb-connector-c-3.1.4-src/libmariadb/CMakeLists.txt
 ===================================================================
---- mariadb-connector-c-3.1.3-src.orig/libmariadb/CMakeLists.txt
-+++ mariadb-connector-c-3.1.3-src/libmariadb/CMakeLists.txt
+--- mariadb-connector-c-3.1.4-src.orig/libmariadb/CMakeLists.txt
++++ mariadb-connector-c-3.1.4-src/libmariadb/CMakeLists.txt
 @@ -410,17 +410,25 @@ IF(CMAKE_SIZEOF_VOID_P EQUAL 8 AND MSVC)
    SET_TARGET_PROPERTIES(mariadbclient PROPERTIES STATIC_LIBRARY_FLAGS 
"/machine:x64")
  ENDIF()
@@ -24,7 +24,7 @@
 +
  IF(CMAKE_SYSTEM_NAME MATCHES "Linux" OR
     CMAKE_SYSTEM_NAME MATCHES "GNU")
-   IF (NOT WITH_ASAN AND NOT WITH_TSAN)
+   IF (NOT WITH_ASAN AND NOT WITH_TSAN AND NOT WITH_UBSAN AND NOT WITH_MSAN)
      TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined")
    ENDIF()
    SET_TARGET_PROPERTIES(libmariadb PROPERTIES LINK_FLAGS 
"${CC_BINARY_DIR}/libmariadb/mariadbclient.def")
@@ -49,10 +49,10 @@
  
  IF(WIN32)
     # On Windows, install PDB
-Index: mariadb-connector-c-3.1.3-src/mariadb_config/mariadb_config.c.in
+Index: mariadb-connector-c-3.1.4-src/mariadb_config/mariadb_config.c.in
 ===================================================================
---- mariadb-connector-c-3.1.3-src.orig/mariadb_config/mariadb_config.c.in
-+++ mariadb-connector-c-3.1.3-src/mariadb_config/mariadb_config.c.in
+--- mariadb-connector-c-3.1.4-src.orig/mariadb_config/mariadb_config.c.in
++++ mariadb-connector-c-3.1.4-src/mariadb_config/mariadb_config.c.in
 @@ -7,6 +7,8 @@ static char *mariadb_progname;
  
  #define INCLUDE "-I@INSTALL_INCLUDEDIR@ -I@INSTALL_INCLUDEDIR@/mariadb"


Reply via email to