mariadb/mysql-test/suite/plugins/t/unix_socket.test

56 lines
1.5 KiB
Text

--source include/have_unix_socket.inc
--echo #
--echo # with named user
--echo #
--let $replace=create user '$USER'
--let $greplace=grant select on test.* to '$USER'
--replace_result $replace "create user 'USER'"
eval create user '$USER' identified via unix_socket;
--replace_result $greplace "grant select on test.* to 'USER'"
eval grant select on test.* to '$USER';
--write_file $MYSQLTEST_VARDIR/tmp/peercred_test.txt
--let $replace1=$USER@localhost
--let $replace2=$USER@%
--replace_result $replace1 "USER@localhost" $replace2 "USER@%"
select user(), current_user(), database();
EOF
--echo #
--echo # name match = ok
--echo #
--exec $MYSQL_TEST -u $USER < $MYSQLTEST_VARDIR/tmp/peercred_test.txt
--echo #
--echo # name does not match = failure
--echo #
--error 1
--exec $MYSQL_TEST -u foobar < $MYSQLTEST_VARDIR/tmp/peercred_test.txt
--let $replace=drop user '$USER'
--replace_result $replace "drop user 'USER'"
eval drop user '$USER';
--echo #
--echo # and now with anonymous user
--echo #
grant SELECT ON test.* TO '' identified via unix_socket;
--echo #
--echo # name match = ok
--echo #
--exec $MYSQL_TEST -u $USER < $MYSQLTEST_VARDIR/tmp/peercred_test.txt
--echo #
--echo # name does not match = failure
--echo #
--error 1
--exec $MYSQL_TEST -u foobar < $MYSQLTEST_VARDIR/tmp/peercred_test.txt
# restoring mysql.user to the original state.
delete from mysql.user where user='';
FLUSH PRIVILEGES;
--remove_file $MYSQLTEST_VARDIR/tmp/peercred_test.txt
delete from mysql.db;