summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorRobert Antoni Buj i Gelonch <robert.buj@gmail.com>2014-09-17 18:05:43 +0200
committerCaolán McNamara <caolanm@redhat.com>2014-09-25 16:14:27 +0000
commit5c6d26753d758c2173f21a14283bdafa54063b63 (patch)
treeae111e7e4b8df854baa55e418813abf65067fb37 /external
parent81055f589fc2de92e37dbe29f59b5da80728b28a (diff)
Fix for CONC-104: mysql_options doesn't support MYSQL_SECURE_AUTH option
http://bazaar.launchpad.net/~maria-captains/mariadb-native-client/trunk/revision/149 Change-Id: I273f355b9fc922fdb9d9692e0057cfccfdcbcde1 Reviewed-on: https://gerrit.libreoffice.org/11492 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'external')
-rw-r--r--external/libmariadb/UnpackedTarball_mariadb.mk5
-rw-r--r--external/libmariadb/mariadb-CONC-104.patch.149
-rw-r--r--external/mysqlcppconn/UnpackedTarball_mysqlcppconn.mk1
-rw-r--r--external/mysqlcppconn/patches/enable-libmysql-proxy.patch27
4 files changed, 80 insertions, 2 deletions
diff --git a/external/libmariadb/UnpackedTarball_mariadb.mk b/external/libmariadb/UnpackedTarball_mariadb.mk
index d3a315f4b819..d03e2eeaecc9 100644
--- a/external/libmariadb/UnpackedTarball_mariadb.mk
+++ b/external/libmariadb/UnpackedTarball_mariadb.mk
@@ -28,8 +28,9 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,mariadb,1))
# non-static inline local_thr_alarm in libmariadb/net.c":
$(eval $(call gb_UnpackedTarball_add_patches,mariadb,\
external/libmariadb/mariadb-swap.patch \
- external/libmariadb/mariadb-msvc.patch.1 \
- external/libmariadb/mariadb-inline.patch.1 \
+ $(if $(filter MSC,$(COM)),external/libmariadb/mariadb-msvc.patch.1) \
+ external/libmariadb/mariadb-inline.patch.1 \
+ external/libmariadb/mariadb-CONC-104.patch.1 \
))
# vim: set noet sw=4 ts=4:
diff --git a/external/libmariadb/mariadb-CONC-104.patch.1 b/external/libmariadb/mariadb-CONC-104.patch.1
new file mode 100644
index 000000000000..cba9fbba339d
--- /dev/null
+++ b/external/libmariadb/mariadb-CONC-104.patch.1
@@ -0,0 +1,49 @@
+--- mariadb/include/errmsg.h 2014-04-04 12:21:01.000000000 +0200
++++ mariadb/include/errmsg.h 2014-09-17 17:47:25.000000000 +0200
+@@ -66,6 +66,7 @@
+ #define CR_PARAMS_NOT_BOUND 2031
+ #define CR_INVALID_PARAMETER_NO 2034
+ #define CR_UNSUPPORTED_PARAM_TYPE 2036
++#define CR_SECURE_AUTH 2049
+ #define CR_NO_DATA 2051
+ #define CR_NO_STMT_METADATA 2052
+ #define CR_NOT_IMPLEMENTED 2054
+--- mariadb/libmariadb/errmsg.c 2014-04-04 12:21:01.000000000 +0200
++++ mariadb/libmariadb/errmsg.c 2014-09-17 17:48:44.000000000 +0200
+@@ -129,7 +129,7 @@
+ /* 2046 */ "",
+ /* 2047 */ "",
+ /* 2048 */ "",
+-/* 2049 */ "",
++/* 2049 */ "Connection with old authentication protocol refused.",
+ /* 2050 */ "",
+ /* 2051 */ "",
+ /* 2052 */ "Prepared statement contains no metadata",
+--- mariadb/libmariadb/libmariadb.c 2014-04-04 12:21:01.000000000 +0200
++++ mariadb/libmariadb/libmariadb.c 2014-09-17 17:56:13.000000000 +0200
+@@ -1864,7 +1864,14 @@
+ scramble_plugin= native_password_plugin_name;
+ }
+ } else
++ {
+ mysql->server_capabilities&= ~CLIENT_SECURE_CONNECTION;
++ if (mysql->options.secure_auth)
++ {
++ SET_CLIENT_ERROR(mysql, CR_SECURE_AUTH, unknown_sqlstate, 0);
++ goto error;
++ }
++ }
+
+ /* Set character set */
+ if (mysql->options.charset_name)
+@@ -3031,7 +3038,9 @@
+ }
+ }
+ break;
+-
++ case MYSQL_SECURE_AUTH:
++ mysql->options.secure_auth= *(my_bool *)arg1;
++ break;
+ default:
+ va_end(ap);
+ DBUG_RETURN(-1);
diff --git a/external/mysqlcppconn/UnpackedTarball_mysqlcppconn.mk b/external/mysqlcppconn/UnpackedTarball_mysqlcppconn.mk
index 9647c383775a..65f0f8300d1e 100644
--- a/external/mysqlcppconn/UnpackedTarball_mysqlcppconn.mk
+++ b/external/mysqlcppconn/UnpackedTarball_mysqlcppconn.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_UnpackedTarball_add_file,mysqlcppconn,driver/nativeapi/binding_
$(eval $(call gb_UnpackedTarball_add_patches,mysqlcppconn,\
external/mysqlcppconn/patches/mysql-connector-c++-1.1.0.patch \
external/mysqlcppconn/patches/warnings.patch.0 \
+ external/mysqlcppconn/patches/enable-libmysql-proxy.patch \
))
# vim: set noet sw=4 ts=4:
diff --git a/external/mysqlcppconn/patches/enable-libmysql-proxy.patch b/external/mysqlcppconn/patches/enable-libmysql-proxy.patch
new file mode 100644
index 000000000000..6a5894cb1e9c
--- /dev/null
+++ b/external/mysqlcppconn/patches/enable-libmysql-proxy.patch
@@ -0,0 +1,27 @@
+--- UnpackedTarball/mysqlcppconn/driver/nativeapi/mysql_client_api.cpp 2014-07-30 13:41:37.000000000 +0200
++++ UnpackedTarball/mysqlcppconn/driver/nativeapi/mysql_client_api.cpp 2014-09-17 22:12:26.000000000 +0200
+@@ -32,10 +32,10 @@
+
+ #ifdef MYSQLCLIENT_STATIC_BINDING
+ /* MySQL client library is linked */
+-# include "libmysql_static_proxy.h"
++ #include "libmysql_static_proxy.h"
+ #else
+ /* MySQL client library will be dynamically loaded */
+-# include "libmysql_dynamic_proxy.h"
++ #include "libmysql_dynamic_proxy.h"
+ #endif
+
+ namespace sql
+@@ -76,9 +76,9 @@
+ #include "binding_config.h"
+
+ #ifdef MYSQLCLIENT_STATIC_BINDING
+-# include "libmysql_static_proxy.cpp"
++ #include "libmysql_static_proxy.cpp"
+ #else
+-# include "libmysql_dynamic_proxy.cpp"
++ #include "libmysql_dynamic_proxy.cpp"
+ #endif
+
+ /*