Skip to content

Commit 6aea5be

Browse files
author
holzboote@googlemail.com
committed
Fixed ssl test (running ssl tests now under different user)
1 parent b3c35df commit 6aea5be

File tree

1 file changed

+25
-14
lines changed

1 file changed

+25
-14
lines changed

unittest/libmariadb/ssl.c.in

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222

2323
static int skip_ssl= 1;
2424

25+
const char *ssluser= "ssluser";
26+
const char *sslpw= "sslpw";
27+
2528
#ifndef WIN32
2629
pthread_mutex_t LOCK_test;
2730
#endif
@@ -60,6 +63,14 @@ static int test_ssl(MYSQL *mysql)
6063
}
6164
mysql_free_result(res);
6265

66+
if (!skip_ssl)
67+
{
68+
rc= mysql_query(mysql, "DROP USER 'ssltest'@'localhost'");
69+
70+
rc= mysql_query(mysql, "GRANT ALL ON test.* TO 'ssluser'@'localhost' IDENTIFIED BY 'sslpw' REQUIRE SSL");
71+
rc= mysql_query(mysql, "FLUSH PRVILEGES");
72+
}
73+
6374
return OK;
6475
}
6576

@@ -76,7 +87,7 @@ static int test_ssl_cipher(MYSQL *unused)
7687

7788
mysql_ssl_set(my,0, 0, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/ca.pem", 0, 0);
7889

79-
FAIL_IF(!mysql_real_connect(my, hostname, username, password, schema,
90+
FAIL_IF(!mysql_real_connect(my, hostname, ssluser, sslpw, schema,
8091
port, socketname, 0), mysql_error(my));
8192

8293
cipher= (char *)mysql_get_ssl_cipher(my);
@@ -102,7 +113,7 @@ static int test_multi_ssl_connections(MYSQL *unused)
102113

103114
my= mysql_init(NULL);
104115
FAIL_IF(!my,"mysql_init() failed");
105-
FAIL_IF(!mysql_real_connect(my, hostname, username, password, schema,
116+
FAIL_IF(!mysql_real_connect(my, hostname, ssluser, sslpw, schema,
106117
port, socketname, 0), mysql_error(my));
107118

108119
rc= mysql_query(my, "SHOW STATUS LIKE 'Ssl_accepts'");
@@ -120,7 +131,7 @@ static int test_multi_ssl_connections(MYSQL *unused)
120131

121132
mysql_ssl_set(mysql[i], 0, 0, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/ca.pem", 0, 0);
122133

123-
mysql_real_connect(mysql[i], hostname, username, password, schema,
134+
mysql_real_connect(mysql[i], hostname, ssluser, sslpw, schema,
124135
port, socketname, 0);
125136
if (mysql_errno(mysql[i]))
126137
{
@@ -163,7 +174,7 @@ static void ssl_thread(void)
163174
}
164175
mysql_ssl_set(mysql, 0, 0, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/ca.pem", 0, 0);
165176

166-
if(!mysql_real_connect(mysql, hostname, username, password, schema,
177+
if(!mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
167178
port, socketname, 0))
168179
{
169180
diag(">Error: %s", mysql_error(mysql));
@@ -231,7 +242,7 @@ static int test_phpbug51647(MYSQL *my)
231242
"@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/client-cert.pem",
232243
"@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/ca.pem", 0, 0);
233244

234-
FAIL_IF(!mysql_real_connect(mysql, hostname, username, password, schema,
245+
FAIL_IF(!mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
235246
port, socketname, 0), mysql_error(mysql));
236247
diag("%s", mysql_get_ssl_cipher(mysql));
237248
mysql_close(mysql);
@@ -251,7 +262,7 @@ static int test_conc50(MYSQL *my)
251262

252263
mysql_ssl_set(mysql, NULL, NULL, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/my_cert.pem", NULL, NULL);
253264

254-
mysql_real_connect(mysql, hostname, username, password, schema,
265+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
255266
port, socketname, 0);
256267
diag("Error: %d %s", mysql_errno(mysql), mysql_error(mysql));
257268
FAIL_IF(mysql_errno(mysql) != 2026, "Expected errno 2026");
@@ -272,7 +283,7 @@ static int test_conc50_1(MYSQL *my)
272283

273284
mysql_ssl_set(mysql, NULL, NULL, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/ca.pem", NULL, NULL);
274285

275-
mysql_real_connect(mysql, hostname, username, password, schema,
286+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
276287
port, socketname, 0);
277288
if (mysql_errno(mysql))
278289
diag("Error: %d %s", mysql_errno(mysql), mysql_error(mysql));
@@ -294,7 +305,7 @@ static int test_conc50_2(MYSQL *my)
294305

295306
mysql_ssl_set(mysql, NULL, NULL, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/dummy.pem", NULL, NULL);
296307

297-
mysql_real_connect(mysql, hostname, username, password, schema,
308+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
298309
port, socketname, 0);
299310
FAIL_IF(mysql_errno(mysql) != 2026, "Expected errno 2026");
300311
mysql_close(mysql);
@@ -354,7 +365,7 @@ static int test_conc50_4(MYSQL *my)
354365

355366
mysql_ssl_set(mysql, NULL, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/ca.pem", NULL, NULL, NULL);
356367

357-
mysql_real_connect(mysql, hostname, username, password, schema,
368+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
358369
port, socketname, 0);
359370
FAIL_IF(mysql_errno(mysql) , "Expected no error");
360371
mysql_close(mysql);
@@ -379,7 +390,7 @@ static int verify_ssl_server_cert(MYSQL *my)
379390
mysql_ssl_set(mysql, NULL, NULL, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/ca.pem", NULL, NULL);
380391
mysql_options(mysql, MYSQL_OPT_SSL_VERIFY_SERVER_CERT, &verify);
381392

382-
mysql_real_connect(mysql, hostname, username, password, schema,
393+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
383394
port, socketname, 0);
384395

385396
FAIL_IF(!mysql_errno(mysql), "Expected error");
@@ -400,7 +411,7 @@ static int test_bug62743(MYSQL *my)
400411

401412
mysql_ssl_set(mysql, "dummykey", NULL, NULL, NULL, NULL);
402413

403-
mysql_real_connect(mysql, hostname, username, password, schema,
414+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
404415
port, socketname, 0);
405416
diag("Error: %s", mysql_error(mysql));
406417
FAIL_IF(mysql_errno(mysql) != 2026, "Expected errno 2026");
@@ -411,7 +422,7 @@ static int test_bug62743(MYSQL *my)
411422

412423
mysql_ssl_set(mysql, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/client-key.pem", NULL, NULL, NULL, NULL);
413424

414-
mysql_real_connect(mysql, hostname, username, password, schema,
425+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
415426
port, socketname, 0);
416427
diag("Error with key: %s", mysql_error(mysql));
417428
FAIL_IF(mysql_errno(mysql) != 2026, "Expected errno 2026");
@@ -423,7 +434,7 @@ static int test_bug62743(MYSQL *my)
423434
mysql_ssl_set(mysql, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/client-key.pem",
424435
"@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/client-cert.pem", NULL, NULL, NULL);
425436

426-
mysql_real_connect(mysql, hostname, username, password, schema,
437+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
427438
port, socketname, 0);
428439
FAIL_IF(mysql_errno(mysql) != 0, "Expected no error");
429440
mysql_close(mysql);
@@ -433,7 +444,7 @@ static int test_bug62743(MYSQL *my)
433444

434445
mysql_ssl_set(mysql, "@CMAKE_SOURCE_DIR@/unittest/libmariadb/certs/client-key.pem", "blablubb", NULL, NULL, NULL);
435446

436-
mysql_real_connect(mysql, hostname, username, password, schema,
447+
mysql_real_connect(mysql, hostname, ssluser, sslpw, schema,
437448
port, socketname, 0);
438449
diag("Error with cert: %s", mysql_error(mysql));
439450
FAIL_IF(mysql_errno(mysql) == 0, "Expected error");

0 commit comments

Comments
 (0)