diff options
author | bell@sanja.is.com.ua <> | 2005-07-16 00:17:05 +0300 |
---|---|---|
committer | bell@sanja.is.com.ua <> | 2005-07-16 00:17:05 +0300 |
commit | 8aad35f9d25a6a99fcc391d9c8877300bc0d37b0 (patch) | |
tree | c9fb7906419e33891ffbfa8568332c41990b135d /mysql-test/t/sp-security.test | |
parent | 95a5c8ef491b8b1be3efd3cf6b15753736a56e8f (diff) | |
parent | 6114bee47cbcb085f28844173ad382f865191928 (diff) | |
download | mariadb-git-8aad35f9d25a6a99fcc391d9c8877300bc0d37b0.tar.gz |
Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug6-5.0
Diffstat (limited to 'mysql-test/t/sp-security.test')
-rw-r--r-- | mysql-test/t/sp-security.test | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/mysql-test/t/sp-security.test b/mysql-test/t/sp-security.test index 3dc6b9d07ab..15fcba5ebe9 100644 --- a/mysql-test/t/sp-security.test +++ b/mysql-test/t/sp-security.test @@ -341,3 +341,33 @@ REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1@localhost; drop function bug_9503; use test; drop database mysqltest; + +# +# correct value from current_user() in function run from "security definer" +# (BUG#7291) +# +connection con1root; +use test; + +select current_user(); +select user(); +create procedure bug7291_0 () sql security invoker select current_user(), user(); +create procedure bug7291_1 () sql security definer call bug7291_0(); +create procedure bug7291_2 () sql security invoker call bug7291_0(); +grant execute on procedure bug7291_0 to user1@localhost; +grant execute on procedure bug7291_1 to user1@localhost; +grant execute on procedure bug7291_2 to user1@localhost; + +connect (user1,localhost,user1,,); +connection user1; + +call bug7291_2(); +call bug7291_1(); + +connection con1root; +drop procedure bug7291_1; +drop procedure bug7291_2; +drop procedure bug7291_0; +disconnect user1; +REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1@localhost; +drop user user1@localhost; |