mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
Avoid spurious error when restoring INFORMATION_SCHEMA as the current
database after failing to execute a stored procedure in an inaccessible database. (Bug #12318) mysql-test/r/sp-security.result: Update results mysql-test/t/sp-security.test: Add regression test sql/mysql_priv.h: Add additional argument to mysql_change_db() sql/sp.cc: Use mysql_change_db(), get rid of sp_change_db(). sql/sp.h: Get rid of sp_change_db(). sql/sql_db.cc: Handle no_access_check flag to mysql_change_db, and remove the send_ok() call. sql/sql_parse.cc: Add extra argument to mysql_change_db(), and call send_ok() after successful calls to same (since it no longer does it for us).
This commit is contained in:
@@ -236,3 +236,16 @@ drop procedure bug7291_2;
|
||||
drop procedure bug7291_0;
|
||||
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1@localhost;
|
||||
drop user user1@localhost;
|
||||
drop database if exists mysqltest_1;
|
||||
create database mysqltest_1;
|
||||
create procedure mysqltest_1.p1()
|
||||
begin
|
||||
select 1 from dual;
|
||||
end//
|
||||
grant usage on *.* to mysqltest_1@localhost;
|
||||
call mysqltest_1.p1();
|
||||
ERROR 42000: execute command denied to user 'mysqltest_1'@'localhost' for routine 'mysqltest_1.p1'
|
||||
drop procedure mysqltest_1.p1;
|
||||
drop database mysqltest_1;
|
||||
revoke usage on *.* from mysqltest_1@localhost;
|
||||
drop user mysqltest_1@localhost;
|
||||
|
||||
Reference in New Issue
Block a user