You've already forked mariadb-connector-c
mirror of
https://github.com/mariadb-corporation/mariadb-connector-c.git
synced 2025-08-07 02:42:49 +03:00
Instead of mysql_real_connect in tests we call now my_test_connect to apply global options like tls usage
This commit is contained in:
@@ -40,7 +40,7 @@ static int test_conc75(MYSQL *my)
|
|||||||
mysql= mysql_init(NULL);
|
mysql= mysql_init(NULL);
|
||||||
|
|
||||||
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
||||||
mysql_real_connect(mysql, hostname, username, password, schema, port, socketname, 0| CLIENT_MULTI_RESULTS | CLIENT_REMEMBER_OPTIONS);
|
my_test_connect(mysql, hostname, username, password, schema, port, socketname, 0| CLIENT_MULTI_RESULTS | CLIENT_REMEMBER_OPTIONS);
|
||||||
|
|
||||||
rc= mysql_query(mysql, "DROP TABLE IF EXISTS a");
|
rc= mysql_query(mysql, "DROP TABLE IF EXISTS a");
|
||||||
check_mysql_rc(rc, mysql);
|
check_mysql_rc(rc, mysql);
|
||||||
@@ -80,7 +80,7 @@ static int test_conc74(MYSQL *unused __attribute__((unused)))
|
|||||||
mysql= mysql_init(NULL);
|
mysql= mysql_init(NULL);
|
||||||
|
|
||||||
|
|
||||||
if (!mysql_real_connect(mysql, hostname, username, password, schema, port, socketname, 0| CLIENT_MULTI_RESULTS | CLIENT_REMEMBER_OPTIONS))
|
if (!my_test_connect(mysql, hostname, username, password, schema, port, socketname, 0| CLIENT_MULTI_RESULTS | CLIENT_REMEMBER_OPTIONS))
|
||||||
{
|
{
|
||||||
diag("Error: %s", mysql_error(mysql));
|
diag("Error: %s", mysql_error(mysql));
|
||||||
mysql_close(mysql);
|
mysql_close(mysql);
|
||||||
@@ -119,7 +119,7 @@ static int test_conc71(MYSQL *my)
|
|||||||
mysql_options(mysql, MYSQL_INIT_COMMAND, "/*!40101 SET SQL_MODE='' */");
|
mysql_options(mysql, MYSQL_INIT_COMMAND, "/*!40101 SET SQL_MODE='' */");
|
||||||
mysql_options(mysql, MYSQL_INIT_COMMAND, "/*!40101 set @@session.wait_timeout=28800 */");
|
mysql_options(mysql, MYSQL_INIT_COMMAND, "/*!40101 set @@session.wait_timeout=28800 */");
|
||||||
|
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
diag("kill server");
|
diag("kill server");
|
||||||
@@ -149,7 +149,7 @@ static int test_conc70(MYSQL *my)
|
|||||||
mysql_query(my, "SET global max_allowed_packet=1024*1024*22");
|
mysql_query(my, "SET global max_allowed_packet=1024*1024*22");
|
||||||
|
|
||||||
mysql_options(mysql, MYSQL_OPT_COMPRESS, (void *)1);
|
mysql_options(mysql, MYSQL_OPT_COMPRESS, (void *)1);
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
rc= mysql_query(mysql, "DROP TABLE IF EXISTS t1");
|
rc= mysql_query(mysql, "DROP TABLE IF EXISTS t1");
|
||||||
@@ -207,7 +207,7 @@ static int test_conc68(MYSQL *my)
|
|||||||
|
|
||||||
mysql_query(my, "SET global max_allowed_packet=1024*1024*22");
|
mysql_query(my, "SET global max_allowed_packet=1024*1024*22");
|
||||||
|
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
rc= mysql_query(mysql, "DROP TABLE IF EXISTS t1");
|
rc= mysql_query(mysql, "DROP TABLE IF EXISTS t1");
|
||||||
@@ -257,7 +257,7 @@ static int basic_connect(MYSQL *unused __attribute__((unused)))
|
|||||||
MYSQL *my= mysql_init(NULL);
|
MYSQL *my= mysql_init(NULL);
|
||||||
FAIL_IF(!my, "mysql_init() failed");
|
FAIL_IF(!my, "mysql_init() failed");
|
||||||
|
|
||||||
FAIL_IF(!mysql_real_connect(my, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(my, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
rc= mysql_query(my, "SELECT @@version");
|
rc= mysql_query(my, "SELECT @@version");
|
||||||
@@ -647,7 +647,7 @@ static int test_status(MYSQL *mysql)
|
|||||||
|
|
||||||
static int bug_conc1(MYSQL *mysql)
|
static int bug_conc1(MYSQL *mysql)
|
||||||
{
|
{
|
||||||
mysql_real_connect(mysql, hostname, username, password, schema,
|
my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname, 0);
|
port, socketname, 0);
|
||||||
diag("errno: %d", mysql_errno(mysql));
|
diag("errno: %d", mysql_errno(mysql));
|
||||||
FAIL_IF(mysql_errno(mysql) != CR_ALREADY_CONNECTED,
|
FAIL_IF(mysql_errno(mysql) != CR_ALREADY_CONNECTED,
|
||||||
@@ -663,7 +663,7 @@ static int test_options_initcmd(MYSQL *unused __attribute__((unused)))
|
|||||||
|
|
||||||
mysql_options(mysql, MYSQL_INIT_COMMAND, "DROP TABLE IF EXISTS t1; CREATE TABLE t1 (a int)");
|
mysql_options(mysql, MYSQL_INIT_COMMAND, "DROP TABLE IF EXISTS t1; CREATE TABLE t1 (a int)");
|
||||||
mysql_options(mysql, MYSQL_INIT_COMMAND, "INSERT INTO t1 VALUES (1),(2),(3)");
|
mysql_options(mysql, MYSQL_INIT_COMMAND, "INSERT INTO t1 VALUES (1),(2),(3)");
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname,
|
port, socketname,
|
||||||
CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS), mysql_error(mysql));
|
CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS), mysql_error(mysql));
|
||||||
|
|
||||||
@@ -708,7 +708,7 @@ static int test_reconnect_maxpackage(MYSQL *unused __attribute__((unused)))
|
|||||||
SKIP_CONNECTION_HANDLER;
|
SKIP_CONNECTION_HANDLER;
|
||||||
mysql= mysql_init(NULL);
|
mysql= mysql_init(NULL);
|
||||||
|
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname,
|
port, socketname,
|
||||||
CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS), mysql_error(mysql));
|
CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS), mysql_error(mysql));
|
||||||
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
||||||
@@ -760,7 +760,7 @@ static int test_compressed(MYSQL *unused __attribute__((unused)))
|
|||||||
my_bool reconnect= 1;
|
my_bool reconnect= 1;
|
||||||
|
|
||||||
mysql_options(mysql, MYSQL_OPT_COMPRESS, (void *)1);
|
mysql_options(mysql, MYSQL_OPT_COMPRESS, (void *)1);
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname,
|
port, socketname,
|
||||||
CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS), mysql_error(mysql));
|
CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS), mysql_error(mysql));
|
||||||
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
||||||
|
@@ -737,7 +737,7 @@ static int charset_auto(MYSQL *my __attribute__((unused)))
|
|||||||
|
|
||||||
mysql_options(mysql, MYSQL_SET_CHARSET_NAME, "auto");
|
mysql_options(mysql, MYSQL_SET_CHARSET_NAME, "auto");
|
||||||
|
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username,
|
FAIL_IF(!my_test_connect(mysql, hostname, username,
|
||||||
password, schema, port, socketname, 0),
|
password, schema, port, socketname, 0),
|
||||||
mysql_error(mysql));
|
mysql_error(mysql));
|
||||||
|
|
||||||
|
@@ -57,7 +57,7 @@ static int test_conc66(MYSQL *my)
|
|||||||
check_mysql_rc(rc, my);
|
check_mysql_rc(rc, my);
|
||||||
rc= mysql_query(my, "FLUSH PRIVILEGES");
|
rc= mysql_query(my, "FLUSH PRIVILEGES");
|
||||||
check_mysql_rc(rc, my);
|
check_mysql_rc(rc, my);
|
||||||
if (!mysql_real_connect(mysql, hostname, NULL,
|
if (!my_test_connect(mysql, hostname, NULL,
|
||||||
NULL, schema, port, socketname, 0))
|
NULL, schema, port, socketname, 0))
|
||||||
{
|
{
|
||||||
diag("Error: %s", mysql_error(mysql));
|
diag("Error: %s", mysql_error(mysql));
|
||||||
@@ -441,13 +441,13 @@ static int test_bug31669(MYSQL *mysql)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Bug# 33831 mysql_real_connect() should fail if
|
Bug# 33831 my_test_connect() should fail if
|
||||||
given an already connected MYSQL handle.
|
given an already connected MYSQL handle.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static int test_bug33831(MYSQL *mysql)
|
static int test_bug33831(MYSQL *mysql)
|
||||||
{
|
{
|
||||||
FAIL_IF(mysql_real_connect(mysql, hostname, username,
|
FAIL_IF(my_test_connect(mysql, hostname, username,
|
||||||
password, schema, port, socketname, 0),
|
password, schema, port, socketname, 0),
|
||||||
"Error expected");
|
"Error expected");
|
||||||
|
|
||||||
@@ -476,7 +476,7 @@ static int test_opt_reconnect(MYSQL *mysql)
|
|||||||
mysql_get_option(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
mysql_get_option(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
||||||
FAIL_UNLESS(reconnect == 1, "reconnect != 1");
|
FAIL_UNLESS(reconnect == 1, "reconnect != 1");
|
||||||
|
|
||||||
if (!(mysql_real_connect(mysql, hostname, username,
|
if (!(my_test_connect(mysql, hostname, username,
|
||||||
password, schema, port,
|
password, schema, port,
|
||||||
socketname, 0)))
|
socketname, 0)))
|
||||||
{
|
{
|
||||||
@@ -496,7 +496,7 @@ static int test_opt_reconnect(MYSQL *mysql)
|
|||||||
mysql_get_option(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
mysql_get_option(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
||||||
FAIL_UNLESS(reconnect == 0, "reconnect != 0");
|
FAIL_UNLESS(reconnect == 0, "reconnect != 0");
|
||||||
|
|
||||||
if (!(mysql_real_connect(mysql, hostname, username,
|
if (!(my_test_connect(mysql, hostname, username,
|
||||||
password, schema, port,
|
password, schema, port,
|
||||||
socketname, 0)))
|
socketname, 0)))
|
||||||
{
|
{
|
||||||
@@ -527,7 +527,7 @@ static int test_compress(MYSQL *mysql)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (!(mysql_real_connect(mysql, hostname, username,
|
if (!(my_test_connect(mysql, hostname, username,
|
||||||
password, schema, port,
|
password, schema, port,
|
||||||
socketname, 0)))
|
socketname, 0)))
|
||||||
{
|
{
|
||||||
@@ -565,7 +565,7 @@ static int test_reconnect(MYSQL *mysql)
|
|||||||
mysql_get_option(mysql1, MYSQL_OPT_RECONNECT, &reconnect);
|
mysql_get_option(mysql1, MYSQL_OPT_RECONNECT, &reconnect);
|
||||||
FAIL_UNLESS(reconnect == 1, "reconnect != 1");
|
FAIL_UNLESS(reconnect == 1, "reconnect != 1");
|
||||||
|
|
||||||
if (!(mysql_real_connect(mysql1, hostname, username,
|
if (!(my_test_connect(mysql1, hostname, username,
|
||||||
password, schema, port,
|
password, schema, port,
|
||||||
socketname, 0)))
|
socketname, 0)))
|
||||||
{
|
{
|
||||||
@@ -626,7 +626,7 @@ int test_conc26(MYSQL *unused __attribute__((unused)))
|
|||||||
MYSQL *mysql= mysql_init(NULL);
|
MYSQL *mysql= mysql_init(NULL);
|
||||||
mysql_options(mysql, MYSQL_SET_CHARSET_NAME, "utf8");
|
mysql_options(mysql, MYSQL_SET_CHARSET_NAME, "utf8");
|
||||||
|
|
||||||
FAIL_IF(mysql_real_connect(mysql, hostname, "notexistinguser", "password", schema, port, NULL, CLIENT_REMEMBER_OPTIONS),
|
FAIL_IF(my_test_connect(mysql, hostname, "notexistinguser", "password", schema, port, NULL, CLIENT_REMEMBER_OPTIONS),
|
||||||
"Error expected");
|
"Error expected");
|
||||||
|
|
||||||
FAIL_IF(!mysql->options.charset_name || strcmp(mysql->options.charset_name, "utf8") != 0,
|
FAIL_IF(!mysql->options.charset_name || strcmp(mysql->options.charset_name, "utf8") != 0,
|
||||||
@@ -634,7 +634,7 @@ int test_conc26(MYSQL *unused __attribute__((unused)))
|
|||||||
mysql_close(mysql);
|
mysql_close(mysql);
|
||||||
|
|
||||||
mysql= mysql_init(NULL);
|
mysql= mysql_init(NULL);
|
||||||
FAIL_IF(mysql_real_connect(mysql, hostname, "notexistinguser", "password", schema, port, NULL, 0),
|
FAIL_IF(my_test_connect(mysql, hostname, "notexistinguser", "password", schema, port, NULL, 0),
|
||||||
"Error expected");
|
"Error expected");
|
||||||
FAIL_IF(mysql->options.charset_name, "Error: options not freed");
|
FAIL_IF(mysql->options.charset_name, "Error: options not freed");
|
||||||
mysql_close(mysql);
|
mysql_close(mysql);
|
||||||
@@ -649,7 +649,7 @@ int test_connection_timeout(MYSQL *unused __attribute__((unused)))
|
|||||||
MYSQL *mysql= mysql_init(NULL);
|
MYSQL *mysql= mysql_init(NULL);
|
||||||
mysql_options(mysql, MYSQL_OPT_CONNECT_TIMEOUT, (unsigned int *)&timeout);
|
mysql_options(mysql, MYSQL_OPT_CONNECT_TIMEOUT, (unsigned int *)&timeout);
|
||||||
start= time(NULL);
|
start= time(NULL);
|
||||||
if (mysql_real_connect(mysql, "192.168.1.101", "notexistinguser", "password", schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
if (my_test_connect(mysql, "192.168.1.101", "notexistinguser", "password", schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
||||||
{
|
{
|
||||||
diag("Error expected - maybe you have to change hostname");
|
diag("Error expected - maybe you have to change hostname");
|
||||||
return FAIL;
|
return FAIL;
|
||||||
@@ -669,7 +669,7 @@ int test_connection_timeout2(MYSQL *unused __attribute__((unused)))
|
|||||||
mysql_options(mysql, MYSQL_OPT_CONNECT_TIMEOUT, (unsigned int *)&timeout);
|
mysql_options(mysql, MYSQL_OPT_CONNECT_TIMEOUT, (unsigned int *)&timeout);
|
||||||
mysql_options(mysql, MYSQL_INIT_COMMAND, "set @a:=SLEEP(6)");
|
mysql_options(mysql, MYSQL_INIT_COMMAND, "set @a:=SLEEP(6)");
|
||||||
start= time(NULL);
|
start= time(NULL);
|
||||||
if (mysql_real_connect(mysql, hostname, username, password, schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
if (my_test_connect(mysql, hostname, username, password, schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
||||||
{
|
{
|
||||||
diag("timeout error expected");
|
diag("timeout error expected");
|
||||||
return FAIL;
|
return FAIL;
|
||||||
@@ -693,7 +693,7 @@ int test_connection_timeout3(MYSQL *unused __attribute__((unused)))
|
|||||||
mysql_options(mysql, MYSQL_OPT_WRITE_TIMEOUT, (unsigned int *)&read_write_timeout);
|
mysql_options(mysql, MYSQL_OPT_WRITE_TIMEOUT, (unsigned int *)&read_write_timeout);
|
||||||
mysql_options(mysql, MYSQL_INIT_COMMAND, "set @a:=SLEEP(6)");
|
mysql_options(mysql, MYSQL_INIT_COMMAND, "set @a:=SLEEP(6)");
|
||||||
start= time(NULL);
|
start= time(NULL);
|
||||||
if (mysql_real_connect(mysql, hostname, username, password, schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
if (my_test_connect(mysql, hostname, username, password, schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
||||||
{
|
{
|
||||||
diag("timeout error expected");
|
diag("timeout error expected");
|
||||||
elapsed= time(NULL) - start;
|
elapsed= time(NULL) - start;
|
||||||
@@ -710,7 +710,7 @@ int test_connection_timeout3(MYSQL *unused __attribute__((unused)))
|
|||||||
mysql_options(mysql, MYSQL_OPT_READ_TIMEOUT, (unsigned int *)&read_write_timeout);
|
mysql_options(mysql, MYSQL_OPT_READ_TIMEOUT, (unsigned int *)&read_write_timeout);
|
||||||
mysql_options(mysql, MYSQL_OPT_WRITE_TIMEOUT, (unsigned int *)&read_write_timeout);
|
mysql_options(mysql, MYSQL_OPT_WRITE_TIMEOUT, (unsigned int *)&read_write_timeout);
|
||||||
|
|
||||||
if (!mysql_real_connect(mysql, hostname, username, password, schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
if (!my_test_connect(mysql, hostname, username, password, schema, port, NULL, CLIENT_REMEMBER_OPTIONS))
|
||||||
{
|
{
|
||||||
diag("Error: %s", mysql_error(mysql));
|
diag("Error: %s", mysql_error(mysql));
|
||||||
return FAIL;
|
return FAIL;
|
||||||
@@ -770,7 +770,7 @@ static int test_wrong_bind_address(MYSQL *unused __attribute__((unused)))
|
|||||||
mysql= mysql_init(NULL);
|
mysql= mysql_init(NULL);
|
||||||
|
|
||||||
mysql_options(mysql, MYSQL_OPT_BIND, bind_addr);
|
mysql_options(mysql, MYSQL_OPT_BIND, bind_addr);
|
||||||
if (mysql_real_connect(mysql, hostname, username,
|
if (my_test_connect(mysql, hostname, username,
|
||||||
password, schema, port, socketname, 0))
|
password, schema, port, socketname, 0))
|
||||||
{
|
{
|
||||||
diag("Error expected");
|
diag("Error expected");
|
||||||
@@ -815,7 +815,7 @@ static int test_bind_address(MYSQL *my)
|
|||||||
mysql= mysql_init(NULL);
|
mysql= mysql_init(NULL);
|
||||||
mysql_options(mysql, MYSQL_OPT_BIND, bind_addr);
|
mysql_options(mysql, MYSQL_OPT_BIND, bind_addr);
|
||||||
|
|
||||||
if (!mysql_real_connect(mysql, bind_addr, username,
|
if (!my_test_connect(mysql, bind_addr, username,
|
||||||
password, schema, port, socketname, 0))
|
password, schema, port, socketname, 0))
|
||||||
{
|
{
|
||||||
diag("Error: %s\n", mysql_error(mysql));
|
diag("Error: %s\n", mysql_error(mysql));
|
||||||
@@ -942,14 +942,15 @@ static int test_sess_track_db(MYSQL *mysql)
|
|||||||
"session_track_get_first failed");
|
"session_track_get_first failed");
|
||||||
FAIL_IF(strncmp(data, "testc", len), "Expected new schema 'testc'");
|
FAIL_IF(strncmp(data, "testc", len), "Expected new schema 'testc'");
|
||||||
|
|
||||||
|
diag("charset: %s", mysql->charset->csname);
|
||||||
rc= mysql_query(mysql, "SET NAMES utf8");
|
rc= mysql_query(mysql, "SET NAMES utf8");
|
||||||
check_mysql_rc(rc, mysql);
|
check_mysql_rc(rc, mysql);
|
||||||
diag("charset: %s", mysql->charset->csname);
|
|
||||||
FAIL_IF(strcmp(mysql->charset->csname, "utf8"), "Expected charset 'utf8'");
|
|
||||||
if (!mysql_session_track_get_first(mysql, SESSION_TRACK_SYSTEM_VARIABLES, &data, &len))
|
if (!mysql_session_track_get_first(mysql, SESSION_TRACK_SYSTEM_VARIABLES, &data, &len))
|
||||||
do {
|
do {
|
||||||
printf("# SESSION_TRACK_VARIABLES: %*.*s\n", (int)len, (int)len, data);
|
printf("# SESSION_TRACK_VARIABLES: %*.*s\n", (int)len, (int)len, data);
|
||||||
} while (!mysql_session_track_get_next(mysql, SESSION_TRACK_SYSTEM_VARIABLES, &data, &len));
|
} while (!mysql_session_track_get_next(mysql, SESSION_TRACK_SYSTEM_VARIABLES, &data, &len));
|
||||||
|
diag("charset: %s", mysql->charset->csname);
|
||||||
|
FAIL_IF(strcmp(mysql->charset->csname, "utf8"), "Expected charset 'utf8'");
|
||||||
|
|
||||||
rc= mysql_query(mysql, "SET NAMES latin1");
|
rc= mysql_query(mysql, "SET NAMES latin1");
|
||||||
check_mysql_rc(rc, mysql);
|
check_mysql_rc(rc, mysql);
|
||||||
|
@@ -910,7 +910,7 @@ static int test_connect_attrs(MYSQL *my)
|
|||||||
mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD, "foo1", "bar1");
|
mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD, "foo1", "bar1");
|
||||||
mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD, "foo2", "bar2");
|
mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD, "foo2", "bar2");
|
||||||
|
|
||||||
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
if (!(mysql->server_capabilities & CLIENT_CONNECT_ATTRS))
|
if (!(mysql->server_capabilities & CLIENT_CONNECT_ATTRS))
|
||||||
@@ -959,7 +959,7 @@ static int test_conc117(MYSQL *unused __attribute__((unused)))
|
|||||||
{
|
{
|
||||||
my_bool reconnect= 1;
|
my_bool reconnect= 1;
|
||||||
MYSQL *my= mysql_init(NULL);
|
MYSQL *my= mysql_init(NULL);
|
||||||
FAIL_IF(!mysql_real_connect(my, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(my, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
mysql_kill(my, mysql_thread_id(my));
|
mysql_kill(my, mysql_thread_id(my));
|
||||||
@@ -978,7 +978,7 @@ static int test_read_timeout(MYSQL *unused __attribute__((unused)))
|
|||||||
int timeout= 5, rc;
|
int timeout= 5, rc;
|
||||||
MYSQL *my= mysql_init(NULL);
|
MYSQL *my= mysql_init(NULL);
|
||||||
mysql_options(my, MYSQL_OPT_READ_TIMEOUT, &timeout);
|
mysql_options(my, MYSQL_OPT_READ_TIMEOUT, &timeout);
|
||||||
FAIL_IF(!mysql_real_connect(my, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(my, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
rc= mysql_query(my, "SELECT SLEEP(50)");
|
rc= mysql_query(my, "SELECT SLEEP(50)");
|
||||||
@@ -1034,7 +1034,7 @@ static int test_remote2(MYSQL *my)
|
|||||||
|
|
||||||
mysql_options(mysql, MYSQL_READ_DEFAULT_FILE, "http://localhost/test.cnf");
|
mysql_options(mysql, MYSQL_READ_DEFAULT_FILE, "http://localhost/test.cnf");
|
||||||
mysql_options(mysql, MYSQL_READ_DEFAULT_GROUP, "test");
|
mysql_options(mysql, MYSQL_READ_DEFAULT_GROUP, "test");
|
||||||
mysql_real_connect(mysql, hostname, username, password, schema,
|
my_test_connect(mysql, hostname, username, password, schema,
|
||||||
0, socketname, 0), mysql_error(my);
|
0, socketname, 0), mysql_error(my);
|
||||||
diag("port: %d", mysql->port);
|
diag("port: %d", mysql->port);
|
||||||
mysql_close(mysql);
|
mysql_close(mysql);
|
||||||
|
@@ -116,12 +116,22 @@ struct my_tests_st
|
|||||||
const char *skipmsg;
|
const char *skipmsg;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
MYSQL *my_test_connect(MYSQL *mysql,
|
||||||
|
const char *host,
|
||||||
|
const char *user,
|
||||||
|
const char *passwd,
|
||||||
|
const char *db,
|
||||||
|
unsigned int port,
|
||||||
|
const char *unix_socket,
|
||||||
|
unsigned long clientflag);
|
||||||
|
|
||||||
static const char *schema = 0;
|
static const char *schema = 0;
|
||||||
static char *hostname = 0;
|
static char *hostname = 0;
|
||||||
static char *password = 0;
|
static char *password = 0;
|
||||||
static unsigned int port = 0;
|
static unsigned int port = 0;
|
||||||
static char *socketname = 0;
|
static char *socketname = 0;
|
||||||
static char *username = 0;
|
static char *username = 0;
|
||||||
|
static int force_tls= 0;
|
||||||
/*
|
/*
|
||||||
static struct my_option test_options[] =
|
static struct my_option test_options[] =
|
||||||
{
|
{
|
||||||
@@ -313,6 +323,7 @@ static void usage()
|
|||||||
printf("-p password\n");
|
printf("-p password\n");
|
||||||
printf("-d database\n");
|
printf("-d database\n");
|
||||||
printf("-S socketname\n");
|
printf("-S socketname\n");
|
||||||
|
printf("-t force use of TLS\n");
|
||||||
printf("-P port number\n");
|
printf("-P port number\n");
|
||||||
printf("? displays this help and exits\n");
|
printf("? displays this help and exits\n");
|
||||||
}
|
}
|
||||||
@@ -321,7 +332,7 @@ void get_options(int argc, char **argv)
|
|||||||
{
|
{
|
||||||
int c= 0;
|
int c= 0;
|
||||||
|
|
||||||
while ((c=getopt(argc,argv, "h:u:p:d:w:P:S:?")) >= 0)
|
while ((c=getopt(argc,argv, "h:u:p:d:w:P:S:t:?")) >= 0)
|
||||||
{
|
{
|
||||||
switch(c) {
|
switch(c) {
|
||||||
case 'h':
|
case 'h':
|
||||||
@@ -342,6 +353,9 @@ void get_options(int argc, char **argv)
|
|||||||
case 'S':
|
case 'S':
|
||||||
socketname= optarg;
|
socketname= optarg;
|
||||||
break;
|
break;
|
||||||
|
case 't':
|
||||||
|
force_tls= 1;
|
||||||
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
usage();
|
usage();
|
||||||
exit(0);
|
exit(0);
|
||||||
@@ -408,7 +422,7 @@ MYSQL *test_connect(struct my_tests_st *test)
|
|||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!(mysql_real_connect(mysql, hostname, username, password,
|
if (!(my_test_connect(mysql, hostname, username, password,
|
||||||
schema, port, socketname, (test) ? test->connect_flags:0)))
|
schema, port, socketname, (test) ? test->connect_flags:0)))
|
||||||
{
|
{
|
||||||
diag("Couldn't establish connection to server %s. Error (%d): %s",
|
diag("Couldn't establish connection to server %s. Error (%d): %s",
|
||||||
@@ -450,10 +464,33 @@ void get_envvars() {
|
|||||||
schema= "testc";
|
schema= "testc";
|
||||||
if (!port && (envvar= getenv("MYSQL_TEST_PORT")))
|
if (!port && (envvar= getenv("MYSQL_TEST_PORT")))
|
||||||
port= atoi(envvar);
|
port= atoi(envvar);
|
||||||
|
if (!force_tls && (envvar= getenv("MYSQL_TEST_TLS")))
|
||||||
|
force_tls= atoi(envvar);
|
||||||
if (!socketname && (envvar= getenv("MYSQL_TEST_SOCKET")))
|
if (!socketname && (envvar= getenv("MYSQL_TEST_SOCKET")))
|
||||||
socketname= envvar;
|
socketname= envvar;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MYSQL *my_test_connect(MYSQL *mysql,
|
||||||
|
const char *host,
|
||||||
|
const char *user,
|
||||||
|
const char *passwd,
|
||||||
|
const char *db,
|
||||||
|
unsigned int port,
|
||||||
|
const char *unix_socket,
|
||||||
|
unsigned long clientflag)
|
||||||
|
{
|
||||||
|
if (force_tls)
|
||||||
|
mysql_options(mysql, MYSQL_OPT_SSL_ENFORCE, &force_tls);
|
||||||
|
mysql= mysql_real_connect(mysql, host, user, passwd, db, port, unix_socket, clientflag);
|
||||||
|
if (mysql && force_tls && !mysql_get_ssl_cipher(mysql))
|
||||||
|
{
|
||||||
|
diag("Error: TLS connection not established");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
return mysql;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void run_tests(struct my_tests_st *test) {
|
void run_tests(struct my_tests_st *test) {
|
||||||
int i, rc, total=0;
|
int i, rc, total=0;
|
||||||
MYSQL *mysql, *mysql_default= NULL; /* default connection */
|
MYSQL *mysql, *mysql_default= NULL; /* default connection */
|
||||||
|
@@ -59,8 +59,8 @@ static int test_conc83(MYSQL *unused __attribute__((unused)))
|
|||||||
stmt= mysql_stmt_init(mysql);
|
stmt= mysql_stmt_init(mysql);
|
||||||
|
|
||||||
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
||||||
FAIL_IF(!(mysql_real_connect(mysql, hostname, username, password,
|
FAIL_IF(!(my_test_connect(mysql, hostname, username, password,
|
||||||
schema, port, socketname, 0)), "mysql_real_connect failed");
|
schema, port, socketname, 0)), "my_test_connect failed");
|
||||||
|
|
||||||
/* 1. Status is inited, so prepare should work */
|
/* 1. Status is inited, so prepare should work */
|
||||||
|
|
||||||
@@ -825,8 +825,8 @@ static int test_prepare_alter(MYSQL *mysql)
|
|||||||
|
|
||||||
mysql_new= mysql_init(NULL);
|
mysql_new= mysql_init(NULL);
|
||||||
FAIL_IF(!mysql_new, "mysql_init failed");
|
FAIL_IF(!mysql_new, "mysql_init failed");
|
||||||
FAIL_IF(!(mysql_real_connect(mysql_new, hostname, username, password,
|
FAIL_IF(!(my_test_connect(mysql_new, hostname, username, password,
|
||||||
schema, port, socketname, 0)), "mysql_real_connect failed");
|
schema, port, socketname, 0)), "my_test_connect failed");
|
||||||
rc= mysql_query(mysql_new, "ALTER TABLE test_prep_alter change id id_new varchar(20)");
|
rc= mysql_query(mysql_new, "ALTER TABLE test_prep_alter change id id_new varchar(20)");
|
||||||
diag("Error: %d %s", mysql_errno(mysql_new), mysql_error(mysql_new));
|
diag("Error: %d %s", mysql_errno(mysql_new), mysql_error(mysql_new));
|
||||||
check_mysql_rc(rc, mysql_new);
|
check_mysql_rc(rc, mysql_new);
|
||||||
|
@@ -180,7 +180,7 @@ static int test_conc95(MYSQL *unused __attribute__((unused)))
|
|||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
if (!mysql_real_connect(mysql, hostname, "ssluser1", sslpw, schema,
|
if (!mysql_real_connect(mysql, hostname, "ssluser1", sslpw, schema,
|
||||||
port, socketname, 0))
|
port, socketname, 0))
|
||||||
{
|
{
|
||||||
diag("could not establish x509 connection. Error: %s", mysql_error(mysql));
|
diag("could not establish x509 connection. Error: %s", mysql_error(mysql));
|
||||||
mysql_close(mysql);
|
mysql_close(mysql);
|
||||||
|
@@ -14,7 +14,7 @@ static int basic_connect(MYSQL *unused __attribute__((unused)))
|
|||||||
MYSQL *my= mysql_init(NULL);
|
MYSQL *my= mysql_init(NULL);
|
||||||
FAIL_IF(!my, "mysql_init() failed");
|
FAIL_IF(!my, "mysql_init() failed");
|
||||||
|
|
||||||
FAIL_IF(!mysql_real_connect(my, hostname, username, password, schema,
|
FAIL_IF(!my_test_connect(my, hostname, username, password, schema,
|
||||||
port, socketname, 0), mysql_error(my));
|
port, socketname, 0), mysql_error(my));
|
||||||
|
|
||||||
rc= mysql_query(my, "SELECT @@version");
|
rc= mysql_query(my, "SELECT @@version");
|
||||||
@@ -123,7 +123,7 @@ DWORD WINAPI thread_conc27(void)
|
|||||||
MYSQL_RES *res;
|
MYSQL_RES *res;
|
||||||
mysql_thread_init();
|
mysql_thread_init();
|
||||||
mysql= mysql_init(NULL);
|
mysql= mysql_init(NULL);
|
||||||
if(!mysql_real_connect(mysql, hostname, username, password, schema,
|
if(!my_test_connect(mysql, hostname, username, password, schema,
|
||||||
port, socketname, 0))
|
port, socketname, 0))
|
||||||
{
|
{
|
||||||
diag(">Error: %s", mysql_error(mysql));
|
diag(">Error: %s", mysql_error(mysql));
|
||||||
|
Reference in New Issue
Block a user