mysql-server/mysql-test/t/ssl_crl_clients.test
2025-03-05 14:31:37 +07:00

50 lines
2.1 KiB
Text

#echo Suppress expiration warning by the server check: revoked certs test
call mtr.add_suppression("Failed to validate certificate .*");
call mtr.add_suppression("Server certificate .* verification has failed. Check logs for more details");
let $crllen=`select length(trim(coalesce(@@ssl_crl, ''))) + length(trim(coalesce(@@ssl_crlpath, '')))`;
if (!$crllen)
{
skip Needs OpenSSL;
}
--echo # Test clients with and without CRL lists
let $ssl_base = --ssl-ca=$MYSQL_TEST_DIR/std_data/crl-ca-cert.pem --ssl-key=$MYSQL_TEST_DIR/std_data/crl-server-key.pem --ssl-cert=$MYSQL_TEST_DIR/std_data/crl-server-cert.pem;
let $ssl_crl = $ssl_base --ssl-crl=$MYSQL_TEST_DIR/std_data/crl-client-revoked.crl;
let $ssl_crlpath = $ssl_base --ssl-crlpath=$MYSQL_TEST_DIR/std_data/crldir;
--echo ############ Test mysql ##############
--echo # Test mysql connecting to a server with a certificate revoked by -crl
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
--error 1
--exec $MYSQL $ssl_crl --ssl-mode=VERIFY_CA test -e "SHOW VARIABLES WHERE variable_name LIKE '%ssl%' AND variable_name NOT LIKE '%processlist%';"
--echo # Test mysql connecting to a server with a certificate revoked by -crlpath
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
--error 1
--exec $MYSQL $ssl_crlpath --ssl-mode=VERIFY_CA test -e "SHOW VARIABLES WHERE variable_name LIKE '%ssl%' AND variable_name NOT LIKE '%processlist%';"
--echo ############ Test mysqladmin ##############
let $admin_prefix = --no-defaults;
let $admin_suffix = --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping;
--echo # Test mysqladmin connecting to a server with a certificate revoked by -crl
--disable_result_log
--replace_regex /.*mysqladmin.*: connect/mysqladmin: connect/
--error 1
--exec $MYSQLADMIN $admin_prefix $ssl_crl $admin_suffix --ssl-mode=VERIFY_CA 2>&1
--enable_result_log
--disable_result_log
--echo # Test mysqladmin connecting to a server with a certificate revoked by -crlpath
--replace_regex /.*mysqladmin.*: connect/mysqladmin: connect/
--error 1
--exec $MYSQLADMIN $admin_prefix $ssl_crlpath $admin_suffix --ssl-mode=VERIFY_CA 2>&1
--enable_result_log