polardbxengine/mysql-test/suite/xengine_auth_sec/t/tls12_tls1.test

64 lines
2.3 KiB
Plaintext

# Want to skip this test from daily Valgrind execution
--source include/no_valgrind_without_big.inc
# Test requires TLSv1 and TLSv1.1
--source include/not_min_protocol_tlsv12.inc
# Save the initial number of concurrent sessions
--source include/count_sessions.inc
--echo #
--echo # WL#8196 TLSv1.2 support with TLSv1/TLSv1.1 client
--echo #
--disable_query_log
call mtr.add_suppression("Failed to set up SSL because of");
call mtr.add_suppression("Plugin mysqlx reported: 'Failed at SSL configuration");
--enable_query_log
# We let our server restart attempts write to the file $error_log.
let $error_log= $MYSQLTEST_VARDIR/log/my_restart.err;
--error 0,1
--remove_file $error_log
let $MYSQLD_DATADIR= `SELECT @@datadir`;
let $MYSQL_SOCKET= `SELECT @@socket`;
let $MYSQL_PORT= `SELECT @@port`;
--echo #T1: Setting TLS version TLSv1.1 from the client
--exec $MYSQL --host=127.0.0.1 -P $MASTER_MYPORT --tls-version=TLSv1.1 -e "SHOW STATUS like 'Ssl_version'"
--echo #T2: Setting TLS version TLSv1 from the client
--exec $MYSQL --host=127.0.0.1 -P $MASTER_MYPORT --tls-version=TLSv1 -e "SHOW STATUS like 'Ssl_version'"
--echo #T3: Setting TLS version TLSv1, TLSv1.1 from the client
--exec $MYSQL --host=127.0.0.1 -P $MASTER_MYPORT --tls-version=TLSv1,TLSv1.1 -e "SHOW STATUS like 'Ssl_version'"
--exec echo "restart:--tls-version=TLSv1.2 --ssl-cipher=CAMELLIA256-SHA " > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--enable_reconnect
--source include/wait_until_connected_again.inc
--echo #T4: Setting TLS version1.2 in the server and from client giving TLSv1.1, connection should fail
--exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--shutdown_server
--source include/wait_until_disconnected.inc
--exec echo "restart:--tls-version=TLSv1.2 " > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--enable_reconnect
--source include/wait_until_connected_again.inc
--error 1
--exec $MYSQL --ssl-mode=REQUIRED --host=127.0.0.1 -P $MASTER_MYPORT --tls-version=TLSv1.1 -e "SHOW STATUS like 'Ssl_version'"
--echo # restart server using restart
--echo Restart server and provide ssl-cipher at server startup
--exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--shutdown_server
--source include/wait_until_disconnected.inc
--exec echo "restart: " > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--enable_reconnect
--source include/wait_until_connected_again.inc