mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 21:12:26 +01:00
3180e76262
The test cases had some --replace_result $USER USER. The problem is that the value of $USER can be anything, depending on the name of the unix account that runs the test suite. So random parts of the result can be errorneously replaced, causing test failures. Fix by making the replacements more specific, so they will match only the intended stuff regardless of the value of $USER.
36 lines
1.1 KiB
Text
36 lines
1.1 KiB
Text
--source include/have_unix_socket.inc
|
|
|
|
#
|
|
# MDEV-3909 remote user enumeration
|
|
# unix_socket tests
|
|
#
|
|
update mysql.user set plugin='unix_socket';
|
|
flush privileges;
|
|
|
|
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT $USER USER
|
|
--error ER_PLUGIN_IS_NOT_LOADED
|
|
connect (fail,localhost,$USER);
|
|
|
|
--error ER_PLUGIN_IS_NOT_LOADED
|
|
change_user $USER;
|
|
|
|
eval install plugin unix_socket soname '$AUTH_SOCKET_SO';
|
|
|
|
# Make sure that the replace works, even if $USER is 'user' or something else
|
|
# that matches other parts of the error message.
|
|
--echo connect(localhost,USER,,test,MASTER_PORT,MASTER_SOCKET);
|
|
--let $replace=Access denied for user '$USER'
|
|
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT $replace "Access denied for user 'USER'"
|
|
--disable_query_log
|
|
--error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
|
|
connect (fail,localhost,$USER);
|
|
--enable_query_log
|
|
|
|
--replace_result $replace "Access denied for user 'USER'"
|
|
--error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
|
|
change_user $USER;
|
|
|
|
update mysql.user set plugin='';
|
|
flush privileges;
|
|
uninstall plugin unix_socket;
|
|
|