Skip to content

Commit

Permalink
Merge branch '3.1' into 3.2
Browse files Browse the repository at this point in the history
  • Loading branch information
9EOR9 committed May 2, 2022
2 parents 3ba4c4a + ab7a81e commit ade9bb9
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 8 deletions.
15 changes: 13 additions & 2 deletions libmariadb/mariadb_lib.c
Expand Up @@ -680,6 +680,18 @@ struct st_default_options mariadb_defaults[] =
(OPTS)->extension= (struct st_mysql_options_extension *) \
calloc(1, sizeof(struct st_mysql_options_extension));

#define OPT_SET_EXTENDED_VALUE_BIN(OPTS, KEY, KEY_LEN, VAL, LEN) \
CHECK_OPT_EXTENSION_SET(OPTS) \
free((gptr)(OPTS)->extension->KEY); \
if((VAL) && (LEN)) { \
if (((OPTS)->extension->KEY= malloc((LEN)))) { \
memcpy((OPTS)->extension->KEY, (VAL), (LEN)); \
(OPTS)->extension->KEY_LEN= (LEN); \
} \
} \
else \
(OPTS)->extension->KEY= NULL

#define OPT_SET_EXTENDED_VALUE_STR(OPTS, KEY, VAL) \
CHECK_OPT_EXTENSION_SET(OPTS) \
free((gptr)(OPTS)->extension->KEY); \
Expand Down Expand Up @@ -3360,8 +3372,7 @@ mysql_optionsv(MYSQL *mysql,enum mysql_option option, ...)
case MARIADB_OPT_PROXY_HEADER:
{
size_t arg2 = va_arg(ap, size_t);
OPT_SET_EXTENDED_VALUE(&mysql->options, proxy_header, (char *)arg1);
OPT_SET_EXTENDED_VALUE(&mysql->options, proxy_header_len, arg2);
OPT_SET_EXTENDED_VALUE_BIN(&mysql->options, proxy_header, proxy_header_len, (char *)arg1, arg2);
}
break;
case MARIADB_OPT_TLS_VERSION:
Expand Down
18 changes: 12 additions & 6 deletions travis.sh
Expand Up @@ -2,6 +2,7 @@

set -e

export CC_DIR=/home/travis/build/mariadb-corporation/mariadb-connector-c
if [ -n "$server_branch" ] ; then

###################################################################################################################
Expand All @@ -14,28 +15,33 @@ if [ -n "$server_branch" ] ; then
sudo tail /etc/hosts

# get latest server
git clone -b ${server_branch} https://github.com/mariadb/server ../workdir-server
git clone -b ${server_branch} https://github.com/mariadb/server ../workdir-server --depth=1

cd ../workdir-server
export SERVER_DIR=$PWD

# don't pull in submodules. We want the latest C/C as libmariadb
# 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

mkdir bld
cd bld
cmake .. -DPLUGIN_MROONGA=NO -DPLUGIN_ROCKSDB=NO -DPLUGIN_SPIDER=NO -DPLUGIN_TOKUDB=NO
cd libmariadb
echo "PR:${TRAVIS_PULL_REQUEST} TRAVIS_COMMIT:${TRAVIS_COMMIT}"
if [ -n "$TRAVIS_PULL_REQUEST" ] && [ "$TRAVIS_PULL_REQUEST" != "false" ] ; then
# fetching pull request
echo "fetching PR"
git fetch origin pull/${TRAVIS_PULL_REQUEST}/head:PR_${TRAVIS_PULL_REQUEST}
echo "checkout PR"
git checkout PR_${TRAVIS_PULL_REQUEST}
else
echo "checkout commit"
git checkout ${TRAVIS_COMMIT}
fi

cd ..
cp $CC_DIR/* $SERVER_DIR/libmariadb -r
cd $SERVER_DIR
git add libmariadb

cd $SERVER_DIR/bld
make -j9

cd mysql-test/
Expand Down
27 changes: 27 additions & 0 deletions unittest/libmariadb/my_test.h
Expand Up @@ -655,6 +655,33 @@ void run_tests(struct my_tests_st *test) {
total++;
plan(total);

/* display TLS stats */
mysql= mysql_init(NULL);
mysql_ssl_set(mysql, NULL, NULL, NULL, NULL, NULL);

if (!mysql_real_connect(mysql, hostname, username, password, schema, port, socketname, 0))
{
BAIL_OUT("Can't establish TLS connection to server.");
}

if (!mysql_query(mysql, "SHOW VARIABLES LIKE '%ssl%'"))
{
MYSQL_RES *res;
MYSQL_ROW row;

diag("TLS server variables");
diag("--------------------");

res= mysql_store_result(mysql);
while ((row= mysql_fetch_row(res)))
diag("%s: %s", row[0], row[1]);
mysql_free_result(res);
diag("Cipher in use: %s", mysql_get_ssl_cipher(mysql));
diag("--------------------");
}
mysql_close(mysql);


if ((mysql_default= test_connect(NULL)))
{
diag("Testing against MySQL Server %s", mysql_get_server_info(mysql_default));
Expand Down

0 comments on commit ade9bb9

Please sign in to comment.