You've already forked mariadb-connector-c
mirror of
https://github.com/mariadb-corporation/mariadb-connector-c.git
synced 2025-08-08 14:02:17 +03:00
Merge tag 'v3.0.6' into 10.3-server
This commit is contained in:
@@ -14,8 +14,13 @@ grep -o ">build-[0-9]*" index.html | grep -o "[0-9]*" | tac | while read -r line
|
|||||||
echo "**************************************************************************"
|
echo "**************************************************************************"
|
||||||
wget -q -o /dev/null -O $line.html http://hasky.askmonty.org/archive/10.3/build-$line/kvm-deb-jessie-amd64/debs/binary/
|
wget -q -o /dev/null -O $line.html http://hasky.askmonty.org/archive/10.3/build-$line/kvm-deb-jessie-amd64/debs/binary/
|
||||||
grep -o ">[^\"]*\.deb" $line.html | grep -o "[^>]*\.deb" | while read -r file ; do
|
grep -o ">[^\"]*\.deb" $line.html | grep -o "[^>]*\.deb" | while read -r file ; do
|
||||||
echo "download file: $file"
|
if [[ "$file" =~ ^mariadb-plugin.* ]] ;
|
||||||
wget -q -o /dev/null -O .travis/build/$file http://hasky.askmonty.org/archive/10.3/build-$line/kvm-deb-jessie-amd64/debs/binary/$file
|
then
|
||||||
|
echo "skipped file: $file"
|
||||||
|
else
|
||||||
|
echo "download file: $file"
|
||||||
|
wget -q -o /dev/null -O .travis/build/$file http://hasky.askmonty.org/archive/10.3/build-$line/kvm-deb-jessie-amd64/debs/binary/$file
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
exit
|
exit
|
||||||
|
@@ -17,7 +17,7 @@ print_usage () {
|
|||||||
gen_cert_subject () {
|
gen_cert_subject () {
|
||||||
local fqdn="$1"
|
local fqdn="$1"
|
||||||
[[ "${fqdn}" != "" ]] || print_error "FQDN cannot be blank"
|
[[ "${fqdn}" != "" ]] || print_error "FQDN cannot be blank"
|
||||||
echo "/C=/ST=/O=/localityName=/CN=${fqdn}/organizationalUnitName=/emailAddress=/"
|
echo "/C=XX/ST=X/O=X/localityName=X/CN=${fqdn}/organizationalUnitName=X/emailAddress=X/"
|
||||||
}
|
}
|
||||||
|
|
||||||
main () {
|
main () {
|
||||||
|
19
.travis/server-replace-submodule.sh
Normal file
19
.travis/server-replace-submodule.sh
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# get latest server
|
||||||
|
git clone -b ${SERVER_BRANCH} https://github.com/mariadb/server ../workdir-server
|
||||||
|
|
||||||
|
# copy C/C into libmariadb in server
|
||||||
|
ls -l ../workdir-server/libmariadb
|
||||||
|
cp -r . ../workdir-server/libmariadb
|
||||||
|
|
||||||
|
cd ../workdir-server
|
||||||
|
# don't pull in submodules. We want the latest C/C as libmariadb
|
||||||
|
git config cmake.update-submodules no
|
||||||
|
# build latest server with latest C/C as libmariadb
|
||||||
|
# skip to build some storage engines to speed up the build
|
||||||
|
cmake -DPLUGIN_MROONGA=NO -DPLUGIN_ROCKSDB=NO -DPLUGIN_SPIDER=NO -DPLUGIN_TOKUDB=NO
|
||||||
|
make -j9
|
||||||
|
|
||||||
|
cd mysql-test/
|
||||||
|
./mysql-test-run.pl --suite=main ${TEST_OPTION} --parallel=auto
|
@@ -5,7 +5,6 @@
|
|||||||
CMAKE_MINIMUM_REQUIRED(VERSION 2.8 FATAL_ERROR)
|
CMAKE_MINIMUM_REQUIRED(VERSION 2.8 FATAL_ERROR)
|
||||||
INCLUDE(CheckFunctionExists)
|
INCLUDE(CheckFunctionExists)
|
||||||
IF(COMMAND CMAKE_POLICY)
|
IF(COMMAND CMAKE_POLICY)
|
||||||
SET(OLD_POLICIES )
|
|
||||||
SET(NEW_POLICIES CMP0003 CMP0022 CMP0023)
|
SET(NEW_POLICIES CMP0003 CMP0022 CMP0023)
|
||||||
FOREACH(TYPE OLD NEW)
|
FOREACH(TYPE OLD NEW)
|
||||||
FOREACH(P ${${TYPE}_POLICIES})
|
FOREACH(P ${${TYPE}_POLICIES})
|
||||||
@@ -37,7 +36,7 @@ SET(CC_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
|
|||||||
|
|
||||||
SET(CPACK_PACKAGE_VERSION_MAJOR 3)
|
SET(CPACK_PACKAGE_VERSION_MAJOR 3)
|
||||||
SET(CPACK_PACKAGE_VERSION_MINOR 0)
|
SET(CPACK_PACKAGE_VERSION_MINOR 0)
|
||||||
SET(CPACK_PACKAGE_VERSION_PATCH 5)
|
SET(CPACK_PACKAGE_VERSION_PATCH 6)
|
||||||
SET(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
|
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 +
|
MATH(EXPR MARIADB_PACKAGE_VERSION_ID "${CPACK_PACKAGE_VERSION_MAJOR} * 10000 +
|
||||||
${CPACK_PACKAGE_VERSION_MINOR} * 100 +
|
${CPACK_PACKAGE_VERSION_MINOR} * 100 +
|
||||||
@@ -256,6 +255,11 @@ INCLUDE(${CC_SOURCE_DIR}/cmake/CheckFunctions.cmake)
|
|||||||
# check for various types
|
# check for various types
|
||||||
INCLUDE(${CC_SOURCE_DIR}/cmake/CheckTypes.cmake)
|
INCLUDE(${CC_SOURCE_DIR}/cmake/CheckTypes.cmake)
|
||||||
|
|
||||||
|
IF(NOT DEFAULT_CHARSET)
|
||||||
|
SET(DEFAULT_CHARSET "latin1")
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
|
||||||
# convert SSL options to uppercase
|
# convert SSL options to uppercase
|
||||||
IF(WITH_SSL)
|
IF(WITH_SSL)
|
||||||
STRING(TOUPPER ${WITH_SSL} WITH_SSL)
|
STRING(TOUPPER ${WITH_SSL} WITH_SSL)
|
||||||
|
@@ -31,13 +31,13 @@ IF(NOT INSTALL_LAYOUT)
|
|||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
SET(INSTALL_LAYOUT ${INSTALL_LAYOUT} CACHE
|
SET(INSTALL_LAYOUT ${INSTALL_LAYOUT} CACHE
|
||||||
STRING "Installation layout. Currently supported options are DEFAULT (tar.gz and zip) and RPM")
|
STRING "Installation layout. Currently supported options are DEFAULT (tar.gz and zip), RPM and DEB")
|
||||||
|
|
||||||
# On Windows we only provide zip and .msi. Latter one uses a different packager.
|
# On Windows we only provide zip and .msi. Latter one uses a different packager.
|
||||||
IF(UNIX)
|
IF(UNIX)
|
||||||
IF(INSTALL_LAYOUT MATCHES "RPM")
|
IF(INSTALL_LAYOUT MATCHES "RPM")
|
||||||
SET(libmariadb_prefix "/usr")
|
SET(libmariadb_prefix "/usr")
|
||||||
ELSEIF(INSTALL_LAYOUT MATCHES "DEFAULT")
|
ELSEIF(INSTALL_LAYOUT MATCHES "DEFAULT|DEB")
|
||||||
SET(libmariadb_prefix ${CMAKE_INSTALL_PREFIX})
|
SET(libmariadb_prefix ${CMAKE_INSTALL_PREFIX})
|
||||||
ENDIF()
|
ENDIF()
|
||||||
ENDIF()
|
ENDIF()
|
||||||
@@ -47,7 +47,7 @@ IF(CMAKE_DEFAULT_PREFIX_INITIALIZED_BY_DEFAULT)
|
|||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
# check if the specified installation layout is valid
|
# check if the specified installation layout is valid
|
||||||
SET(VALID_INSTALL_LAYOUTS "DEFAULT" "RPM")
|
SET(VALID_INSTALL_LAYOUTS "DEFAULT" "RPM" "DEB")
|
||||||
LIST(FIND VALID_INSTALL_LAYOUTS "${INSTALL_LAYOUT}" layout_no)
|
LIST(FIND VALID_INSTALL_LAYOUTS "${INSTALL_LAYOUT}" layout_no)
|
||||||
IF(layout_no EQUAL -1)
|
IF(layout_no EQUAL -1)
|
||||||
MESSAGE(FATAL_ERROR "Invalid installation layout ${INSTALL_LAYOUT}. Please specify one of the following layouts: ${VALID_INSTALL_LAYOUTS}")
|
MESSAGE(FATAL_ERROR "Invalid installation layout ${INSTALL_LAYOUT}. Please specify one of the following layouts: ${VALID_INSTALL_LAYOUTS}")
|
||||||
@@ -64,14 +64,12 @@ ENDIF()
|
|||||||
# DEFAULT layout
|
# DEFAULT layout
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
SET(INSTALL_BINDIR_DEFAULT "bin")
|
SET(INSTALL_BINDIR_DEFAULT "bin")
|
||||||
SET(INSTALL_LIBDIR_DEFAULT "lib/mariadb")
|
SET(INSTALL_LIBDIR_DEFAULT "lib/mariadb")
|
||||||
SET(INSTALL_INCLUDEDIR_DEFAULT "include/mariadb")
|
SET(INSTALL_INCLUDEDIR_DEFAULT "include/mariadb")
|
||||||
SET(INSTALL_DOCDIR_DEFAULT "docs")
|
SET(INSTALL_DOCDIR_DEFAULT "docs")
|
||||||
SET(INSTALL_PLUGINDIR_DEFAULT "lib/mariadb/plugin")
|
SET(INSTALL_PLUGINDIR_DEFAULT "lib/mariadb/plugin")
|
||||||
|
SET(LIBMARIADB_STATIC_DEFAULT "mariadbclient")
|
||||||
#
|
#
|
||||||
# RPM layout
|
# RPM layout
|
||||||
#
|
#
|
||||||
@@ -85,6 +83,22 @@ ELSE()
|
|||||||
ENDIF()
|
ENDIF()
|
||||||
SET(INSTALL_INCLUDEDIR_RPM "include")
|
SET(INSTALL_INCLUDEDIR_RPM "include")
|
||||||
SET(INSTALL_DOCDIR_RPM "docs")
|
SET(INSTALL_DOCDIR_RPM "docs")
|
||||||
|
SET(LIBMARIADB_STATIC_RPM "mariadbclient")
|
||||||
|
|
||||||
|
#
|
||||||
|
# DEB layout
|
||||||
|
#
|
||||||
|
SET(INSTALL_BINDIR_DEB "bin")
|
||||||
|
SET(INSTALL_LIBDIR_DEB "lib/${CMAKE_LIBRARY_ARCHITECTURE}")
|
||||||
|
IF(PLUGINDIR_DEB)
|
||||||
|
SET(INSTALL_PLUGINDIR_DEB "${INSTALL_LIBDIR_DEB}/${PLUGINDIR_DEB}/plugin")
|
||||||
|
ELSE()
|
||||||
|
SET(INSTALL_PLUGINDIR_DEB "${INSTALL_LIBDIR_DEB}/mariadb/plugin")
|
||||||
|
ENDIF()
|
||||||
|
SET(INSTALL_INCLUDEDIR_DEB "include/mariadb")
|
||||||
|
SET(LIBMARIADB_STATIC_DEB "mariadb")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Overwrite defaults
|
# Overwrite defaults
|
||||||
@@ -119,3 +133,6 @@ FOREACH(dir "BIN" "LIB" "INCLUDE" "DOCS" "PLUGIN")
|
|||||||
SET(INSTALL_${dir}DIR ${INSTALL_${dir}DIR_${INSTALL_LAYOUT}})
|
SET(INSTALL_${dir}DIR ${INSTALL_${dir}DIR_${INSTALL_LAYOUT}})
|
||||||
MARK_AS_ADVANCED(INSTALL_${dir}DIR)
|
MARK_AS_ADVANCED(INSTALL_${dir}DIR)
|
||||||
ENDFOREACH()
|
ENDFOREACH()
|
||||||
|
|
||||||
|
SET(LIBMARIADB_STATIC_NAME ${LIBMARIADB_STATIC_${INSTALL_LAYOUT}})
|
||||||
|
MARK_AS_ADVANCED(LIBMARIADB_STATIC_NAME)
|
||||||
|
@@ -265,3 +265,5 @@
|
|||||||
|
|
||||||
#cmakedefine SOCKET_SIZE_TYPE @SOCKET_SIZE_TYPE@
|
#cmakedefine SOCKET_SIZE_TYPE @SOCKET_SIZE_TYPE@
|
||||||
|
|
||||||
|
#define MARIADB_DEFAULT_CHARSET "@DEFAULT_CHARSET@"
|
||||||
|
|
||||||
|
@@ -387,7 +387,7 @@ ADD_LIBRARY(mariadbclient STATIC ${MARIADB_OBJECTS} ${EMPTY_FILE})
|
|||||||
TARGET_LINK_LIBRARIES(mariadbclient ${SYSTEM_LIBS})
|
TARGET_LINK_LIBRARIES(mariadbclient ${SYSTEM_LIBS})
|
||||||
|
|
||||||
IF(UNIX)
|
IF(UNIX)
|
||||||
ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} ${MARIADB_OBJECTS} ${EMPTY_FILE} mariadbclient.def)
|
ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} ${MARIADB_OBJECTS} ${EMPTY_FILE})
|
||||||
SET_TARGET_PROPERTIES(libmariadb PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}")
|
SET_TARGET_PROPERTIES(libmariadb PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}")
|
||||||
ELSE()
|
ELSE()
|
||||||
ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} mariadbclient.def)
|
ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} mariadbclient.def)
|
||||||
@@ -407,7 +407,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
|||||||
IF (NOT WITH_ASAN)
|
IF (NOT WITH_ASAN)
|
||||||
TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined")
|
TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
TARGET_LINK_LIBRARIES (libmariadb "${CC_BINARY_DIR}/libmariadb/mariadbclient.def")
|
SET_TARGET_PROPERTIES(libmariadb PROPERTIES LINK_FLAGS "${CC_BINARY_DIR}/libmariadb/mariadbclient.def")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
SET_TARGET_PROPERTIES(mariadbclient PROPERTIES IMPORTED_INTERFACE_LINK_LIBRARIES "${SYSTEM_LIBS}")
|
SET_TARGET_PROPERTIES(mariadbclient PROPERTIES IMPORTED_INTERFACE_LINK_LIBRARIES "${SYSTEM_LIBS}")
|
||||||
@@ -436,6 +436,10 @@ SET_TARGET_PROPERTIES(libmariadb PROPERTIES VERSION
|
|||||||
${CPACK_PACKAGE_VERSION_MAJOR}
|
${CPACK_PACKAGE_VERSION_MAJOR}
|
||||||
SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR})
|
SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR})
|
||||||
|
|
||||||
|
IF(NOT WIN32)
|
||||||
|
SET_TARGET_PROPERTIES(mariadbclient PROPERTIES OUTPUT_NAME "${LIBMARIADB_STATIC_NAME}")
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
INSTALL(TARGETS mariadbclient
|
INSTALL(TARGETS mariadbclient
|
||||||
COMPONENT Development
|
COMPONENT Development
|
||||||
DESTINATION ${INSTALL_LIBDIR})
|
DESTINATION ${INSTALL_LIBDIR})
|
||||||
@@ -443,6 +447,7 @@ INSTALL(TARGETS libmariadb
|
|||||||
COMPONENT SharedLibraries
|
COMPONENT SharedLibraries
|
||||||
DESTINATION ${INSTALL_LIBDIR})
|
DESTINATION ${INSTALL_LIBDIR})
|
||||||
|
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
# On Windows, install PDB
|
# On Windows, install PDB
|
||||||
INSTALL(FILES $<TARGET_PDB_FILE:libmariadb> DESTINATION "${INSTALL_LIBDIR}"
|
INSTALL(FILES $<TARGET_PDB_FILE:libmariadb> DESTINATION "${INSTALL_LIBDIR}"
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
#include <mariadb_ctype.h>
|
#include <mariadb_ctype.h>
|
||||||
#include <ma_string.h>
|
#include <ma_string.h>
|
||||||
|
|
||||||
MARIADB_CHARSET_INFO *ma_default_charset_info = (MARIADB_CHARSET_INFO *)&mariadb_compiled_charsets[21];
|
MARIADB_CHARSET_INFO *ma_default_charset_info; /* will be set in mysql_server_init */
|
||||||
MARIADB_CHARSET_INFO *ma_charset_bin= (MARIADB_CHARSET_INFO *)&mariadb_compiled_charsets[32];
|
MARIADB_CHARSET_INFO *ma_charset_bin= (MARIADB_CHARSET_INFO *)&mariadb_compiled_charsets[32];
|
||||||
MARIADB_CHARSET_INFO *ma_charset_latin1= (MARIADB_CHARSET_INFO *)&mariadb_compiled_charsets[5];
|
MARIADB_CHARSET_INFO *ma_charset_latin1= (MARIADB_CHARSET_INFO *)&mariadb_compiled_charsets[5];
|
||||||
MARIADB_CHARSET_INFO *ma_charset_utf8_general_ci= (MARIADB_CHARSET_INFO *)&mariadb_compiled_charsets[21];
|
MARIADB_CHARSET_INFO *ma_charset_utf8_general_ci= (MARIADB_CHARSET_INFO *)&mariadb_compiled_charsets[21];
|
||||||
|
@@ -90,6 +90,7 @@ extern my_bool mysql_ps_subsystem_initialized;
|
|||||||
extern my_bool mysql_handle_local_infile(MYSQL *mysql, const char *filename);
|
extern my_bool mysql_handle_local_infile(MYSQL *mysql, const char *filename);
|
||||||
extern const MARIADB_CHARSET_INFO * mysql_find_charset_nr(uint charsetnr);
|
extern const MARIADB_CHARSET_INFO * mysql_find_charset_nr(uint charsetnr);
|
||||||
extern const MARIADB_CHARSET_INFO * mysql_find_charset_name(const char * const name);
|
extern const MARIADB_CHARSET_INFO * mysql_find_charset_name(const char * const name);
|
||||||
|
extern my_bool set_default_charset_by_name(const char *cs_name, myf flags __attribute__((unused)));
|
||||||
extern int run_plugin_auth(MYSQL *mysql, char *data, uint data_len,
|
extern int run_plugin_auth(MYSQL *mysql, char *data, uint data_len,
|
||||||
const char *data_plugin, const char *db);
|
const char *data_plugin, const char *db);
|
||||||
extern int net_add_multi_command(NET *net, uchar command, const uchar *packet,
|
extern int net_add_multi_command(NET *net, uchar command, const uchar *packet,
|
||||||
@@ -996,7 +997,7 @@ mysql_init(MYSQL *mysql)
|
|||||||
goto error;
|
goto error;
|
||||||
mysql->options.report_data_truncation= 1;
|
mysql->options.report_data_truncation= 1;
|
||||||
mysql->options.connect_timeout=CONNECT_TIMEOUT;
|
mysql->options.connect_timeout=CONNECT_TIMEOUT;
|
||||||
mysql->charset= ma_default_charset_info;
|
mysql->charset= mysql_find_charset_name(MARIADB_DEFAULT_CHARSET);
|
||||||
mysql->methods= &MARIADB_DEFAULT_METHODS;
|
mysql->methods= &MARIADB_DEFAULT_METHODS;
|
||||||
strcpy(mysql->net.sqlstate, "00000");
|
strcpy(mysql->net.sqlstate, "00000");
|
||||||
mysql->net.last_error[0]= mysql->net.last_errno= 0;
|
mysql->net.last_error[0]= mysql->net.last_errno= 0;
|
||||||
@@ -1483,14 +1484,14 @@ MYSQL *mthd_my_real_connect(MYSQL *mysql, const char *host, const char *user,
|
|||||||
if (mysql->options.charset_name)
|
if (mysql->options.charset_name)
|
||||||
mysql->charset= mysql_find_charset_name(mysql->options.charset_name);
|
mysql->charset= mysql_find_charset_name(mysql->options.charset_name);
|
||||||
else
|
else
|
||||||
mysql->charset=ma_default_charset_info;
|
mysql->charset=mysql_find_charset_name(MARIADB_DEFAULT_CHARSET);
|
||||||
|
|
||||||
if (!mysql->charset)
|
if (!mysql->charset)
|
||||||
{
|
{
|
||||||
net->last_errno=CR_CANT_READ_CHARSET;
|
net->last_errno=CR_CANT_READ_CHARSET;
|
||||||
sprintf(net->last_error,ER(net->last_errno),
|
sprintf(net->last_error,ER(net->last_errno),
|
||||||
mysql->options.charset_name ? mysql->options.charset_name :
|
mysql->options.charset_name ? mysql->options.charset_name :
|
||||||
"unknown",
|
MARIADB_DEFAULT_CHARSET,
|
||||||
"compiled_in");
|
"compiled_in");
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
@@ -1724,9 +1725,9 @@ my_bool STDCALL mysql_change_user(MYSQL *mysql, const char *user,
|
|||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
if (mysql->options.charset_name)
|
if (mysql->options.charset_name)
|
||||||
mysql->charset =mysql_find_charset_name(mysql->options.charset_name);
|
mysql->charset= mysql_find_charset_name(mysql->options.charset_name);
|
||||||
else
|
else
|
||||||
mysql->charset=ma_default_charset_info;
|
mysql->charset=mysql_find_charset_name(MARIADB_DEFAULT_CHARSET);
|
||||||
|
|
||||||
mysql->user= strdup(user ? user : "");
|
mysql->user= strdup(user ? user : "");
|
||||||
mysql->passwd= strdup(passwd ? passwd : "");
|
mysql->passwd= strdup(passwd ? passwd : "");
|
||||||
@@ -1744,7 +1745,7 @@ my_bool STDCALL mysql_change_user(MYSQL *mysql, const char *user,
|
|||||||
free(s_passwd);
|
free(s_passwd);
|
||||||
free(s_db);
|
free(s_db);
|
||||||
|
|
||||||
if (db && !(mysql->db= strdup(db)))
|
if (!mysql->db && db && !(mysql->db= strdup(db)))
|
||||||
{
|
{
|
||||||
SET_CLIENT_ERROR(mysql, CR_OUT_OF_MEMORY, SQLSTATE_UNKNOWN, 0);
|
SET_CLIENT_ERROR(mysql, CR_OUT_OF_MEMORY, SQLSTATE_UNKNOWN, 0);
|
||||||
rc= 1;
|
rc= 1;
|
||||||
@@ -3488,6 +3489,7 @@ static void mysql_once_init()
|
|||||||
ma_init(); /* Will init threads */
|
ma_init(); /* Will init threads */
|
||||||
init_client_errs();
|
init_client_errs();
|
||||||
get_default_configuration_dirs();
|
get_default_configuration_dirs();
|
||||||
|
set_default_charset_by_name(MARIADB_DEFAULT_CHARSET, 0);
|
||||||
if (mysql_client_plugin_init())
|
if (mysql_client_plugin_init())
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
|
@@ -726,15 +726,14 @@ ssize_t ma_tls_write_async(MARIADB_PVIO *pvio,
|
|||||||
ssize_t ma_tls_read(MARIADB_TLS *ctls, const uchar* buffer, size_t length)
|
ssize_t ma_tls_read(MARIADB_TLS *ctls, const uchar* buffer, size_t length)
|
||||||
{
|
{
|
||||||
ssize_t rc;
|
ssize_t rc;
|
||||||
MYSQL *mysql= (MYSQL *)SSL_get_app_data(ctls->ssl);
|
MARIADB_PVIO *pvio= ctls->pvio;
|
||||||
MARIADB_PVIO *pvio= mysql->net.pvio;
|
|
||||||
|
|
||||||
while ((rc= SSL_read((SSL *)ctls->ssl, (void *)buffer, (int)length)) < 0)
|
while ((rc= SSL_read((SSL *)ctls->ssl, (void *)buffer, (int)length)) < 0)
|
||||||
{
|
{
|
||||||
int error= SSL_get_error((SSL *)ctls->ssl, rc);
|
int error= SSL_get_error((SSL *)ctls->ssl, rc);
|
||||||
if (error != SSL_ERROR_WANT_READ)
|
if (error != SSL_ERROR_WANT_READ)
|
||||||
return rc;
|
return rc;
|
||||||
if (pvio->methods->wait_io_or_timeout(pvio, TRUE, mysql->options.read_timeout) < 1)
|
if (pvio->methods->wait_io_or_timeout(pvio, TRUE, pvio->mysql->options.read_timeout) < 1)
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
return rc;
|
return rc;
|
||||||
@@ -743,15 +742,14 @@ ssize_t ma_tls_read(MARIADB_TLS *ctls, const uchar* buffer, size_t length)
|
|||||||
ssize_t ma_tls_write(MARIADB_TLS *ctls, const uchar* buffer, size_t length)
|
ssize_t ma_tls_write(MARIADB_TLS *ctls, const uchar* buffer, size_t length)
|
||||||
{
|
{
|
||||||
ssize_t rc;
|
ssize_t rc;
|
||||||
MYSQL *mysql= (MYSQL *)SSL_get_app_data(ctls->ssl);
|
MARIADB_PVIO *pvio= ctls->pvio;
|
||||||
MARIADB_PVIO *pvio= mysql->net.pvio;
|
|
||||||
|
|
||||||
while ((rc= SSL_write((SSL *)ctls->ssl, (void *)buffer, (int)length)) <= 0)
|
while ((rc= SSL_write((SSL *)ctls->ssl, (void *)buffer, (int)length)) <= 0)
|
||||||
{
|
{
|
||||||
int error= SSL_get_error((SSL *)ctls->ssl, rc);
|
int error= SSL_get_error((SSL *)ctls->ssl, rc);
|
||||||
if (error != SSL_ERROR_WANT_WRITE)
|
if (error != SSL_ERROR_WANT_WRITE)
|
||||||
return rc;
|
return rc;
|
||||||
if (pvio->methods->wait_io_or_timeout(pvio, TRUE, mysql->options.write_timeout) < 1)
|
if (pvio->methods->wait_io_or_timeout(pvio, TRUE, pvio->mysql->options.write_timeout) < 1)
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
return rc;
|
return rc;
|
||||||
|
@@ -772,7 +772,7 @@ my_bool pvio_socket_connect(MARIADB_PVIO *pvio, MA_PVIO_CINFO *cinfo)
|
|||||||
/* Abstract socket */
|
/* Abstract socket */
|
||||||
if (cinfo->unix_socket[0] == '@')
|
if (cinfo->unix_socket[0] == '@')
|
||||||
{
|
{
|
||||||
strcpy(UNIXaddr.sun_path + 1, cinfo->unix_socket + 1);
|
strncpy(UNIXaddr.sun_path + 1, cinfo->unix_socket + 1, 107);
|
||||||
port_length+= offsetof(struct sockaddr_un, sun_path);
|
port_length+= offsetof(struct sockaddr_un, sun_path);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@@ -1084,6 +1084,7 @@ static int test_auth256(MYSQL *my)
|
|||||||
if (!mysql_client_find_plugin(mysql, "sha256_password", 3))
|
if (!mysql_client_find_plugin(mysql, "sha256_password", 3))
|
||||||
{
|
{
|
||||||
diag("sha256_password plugin not available");
|
diag("sha256_password plugin not available");
|
||||||
|
mysql_close(mysql);
|
||||||
return SKIP;
|
return SKIP;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1097,6 +1098,7 @@ static int test_auth256(MYSQL *my)
|
|||||||
if (!num_rows)
|
if (!num_rows)
|
||||||
{
|
{
|
||||||
diag("server doesn't support sha256 authentication");
|
diag("server doesn't support sha256 authentication");
|
||||||
|
mysql_close(mysql);
|
||||||
return SKIP;
|
return SKIP;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1365,12 +1367,13 @@ static int test_conc315(MYSQL *mysql)
|
|||||||
return SKIP;
|
return SKIP;
|
||||||
|
|
||||||
mysql_get_optionv(mysql, MYSQL_SET_CHARSET_NAME, (void *)&csname);
|
mysql_get_optionv(mysql, MYSQL_SET_CHARSET_NAME, (void *)&csname);
|
||||||
FAIL_UNLESS(strcmp(csname, "utf8") == 0, "Wrong default character set");
|
diag("csname=%s", csname);
|
||||||
|
FAIL_UNLESS(strcmp(csname, MARIADB_DEFAULT_CHARSET) == 0, "Wrong default character set");
|
||||||
|
|
||||||
rc= mysql_change_user(mysql, username, password, schema);
|
rc= mysql_change_user(mysql, username, password, schema);
|
||||||
check_mysql_rc(rc, mysql);
|
check_mysql_rc(rc, mysql);
|
||||||
mysql_get_optionv(mysql, MYSQL_SET_CHARSET_NAME, (void *)&csname);
|
mysql_get_optionv(mysql, MYSQL_SET_CHARSET_NAME, (void *)&csname);
|
||||||
FAIL_UNLESS(strcmp(csname, "utf8") == 0, "Wrong default character set");
|
FAIL_UNLESS(strcmp(csname, MARIADB_DEFAULT_CHARSET) == 0, "Wrong default character set");
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
@@ -1531,7 +1534,7 @@ struct my_tests_st my_tests[] = {
|
|||||||
{"test_conc327", test_conc327, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
{"test_conc327", test_conc327, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
||||||
{"test_conc317", test_conc317, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
{"test_conc317", test_conc317, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
||||||
#endif
|
#endif
|
||||||
{"test_conc315", test_conc315, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
{"test_conc315", test_conc315, TEST_CONNECTION_NEW, 0, NULL, NULL},
|
||||||
{"test_expired_pw", test_expired_pw, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
{"test_expired_pw", test_expired_pw, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
||||||
{"test_conc276", test_conc276, TEST_CONNECTION_NONE, 0, NULL, NULL},
|
{"test_conc276", test_conc276, TEST_CONNECTION_NONE, 0, NULL, NULL},
|
||||||
{"test_mdev13100", test_mdev13100, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
{"test_mdev13100", test_mdev13100, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},
|
||||||
|
@@ -30,7 +30,7 @@ FOREACH(plugin ${PLUGINS_DYNAMIC})
|
|||||||
SET(TARGET ${plugin})
|
SET(TARGET ${plugin})
|
||||||
# Get dependencies
|
# Get dependencies
|
||||||
SET(DYNAMIC_TARGETS ${DYNAMIC_TARGETS} ${TARGET})
|
SET(DYNAMIC_TARGETS ${DYNAMIC_TARGETS} ${TARGET})
|
||||||
GET_PROPERTY(FILE TARGET ${TARGET} PROPERTY LOCATION)
|
SET(FILE ${CC_BINARY_DIR}/${CMAKE_BUILD_TYPE}/${TARGET}.dll)
|
||||||
MESSAGE(STATUS "Location for ${TARGET}: ${FILE}")
|
MESSAGE(STATUS "Location for ${TARGET}: ${FILE}")
|
||||||
# build file list
|
# build file list
|
||||||
STRING(REPLACE "$(Configuration)" "RelWithDebInfo" FILE ${FILE})
|
STRING(REPLACE "$(Configuration)" "RelWithDebInfo" FILE ${FILE})
|
||||||
|
Reference in New Issue
Block a user