Update after merge to 5.0
mysql-test/r/grant.result: Reorder test result mysql-test/t/grant.test: Add "use test" sql/sql_acl.cc: Add check if host is NULL Add check if grant_name->host.hostname is null
This commit is contained in:
parent
8d28735d13
commit
88a3ee71e3
@ -624,6 +624,25 @@ GRANT USAGE ON *.* TO 'mysqltest_7'@'' IDENTIFIED BY PASSWORD '*2FB071A056F9BB74
|
||||
drop user mysqltest_7@;
|
||||
show grants for mysqltest_7@;
|
||||
ERROR 42000: There is no such grant defined for user 'mysqltest_7' on host ''
|
||||
create database mysqltest;
|
||||
use mysqltest;
|
||||
create table t1(f1 int);
|
||||
GRANT DELETE ON mysqltest.t1 TO mysqltest1@'%';
|
||||
GRANT SELECT ON mysqltest.t1 TO mysqltest1@'192.%';
|
||||
show grants for mysqltest1@'192.%';
|
||||
Grants for mysqltest1@192.%
|
||||
GRANT USAGE ON *.* TO 'mysqltest1'@'192.%'
|
||||
GRANT SELECT ON `mysqltest`.`t1` TO 'mysqltest1'@'192.%'
|
||||
show grants for mysqltest1@'%';
|
||||
Grants for mysqltest1@%
|
||||
GRANT USAGE ON *.* TO 'mysqltest1'@'%'
|
||||
GRANT DELETE ON `mysqltest`.`t1` TO 'mysqltest1'@'%'
|
||||
delete from mysql.user where user='mysqltest1';
|
||||
delete from mysql.db where user='mysqltest1';
|
||||
delete from mysql.tables_priv where user='mysqltest1';
|
||||
flush privileges;
|
||||
drop database mysqltest;
|
||||
use test;
|
||||
create table t1 (a int);
|
||||
create table t2 as select * from mysql.user where user='';
|
||||
delete from mysql.user where user='';
|
||||
@ -834,21 +853,3 @@ insert into mysql.user select * from t2;
|
||||
flush privileges;
|
||||
drop table t2;
|
||||
drop table t1;
|
||||
create database mysqltest;
|
||||
use mysqltest;
|
||||
create table t1(f1 int);
|
||||
GRANT DELETE ON mysqltest.t1 TO mysqltest1@'%';
|
||||
GRANT SELECT ON mysqltest.t1 TO mysqltest1@'192.%';
|
||||
show grants for mysqltest1@'192.%';
|
||||
Grants for mysqltest1@192.%
|
||||
GRANT USAGE ON *.* TO 'mysqltest1'@'192.%'
|
||||
GRANT SELECT ON `mysqltest`.`t1` TO 'mysqltest1'@'192.%'
|
||||
show grants for mysqltest1@'%';
|
||||
Grants for mysqltest1@%
|
||||
GRANT USAGE ON *.* TO 'mysqltest1'@'%'
|
||||
GRANT DELETE ON `mysqltest`.`t1` TO 'mysqltest1'@'%'
|
||||
delete from mysql.user where user='mysqltest1';
|
||||
delete from mysql.db where user='mysqltest1';
|
||||
delete from mysql.tables_priv where user='mysqltest1';
|
||||
flush privileges;
|
||||
drop database mysqltest;
|
||||
|
@ -532,7 +532,7 @@ drop database mysqltest;
|
||||
#
|
||||
# Bug #16297 In memory grant tables not flushed when users's hostname is ""
|
||||
#
|
||||
|
||||
use test;
|
||||
create table t1 (a int);
|
||||
|
||||
# Backup anonymous users and remove them. (They get in the way of
|
||||
|
@ -2273,7 +2273,8 @@ static GRANT_NAME *name_hash_search(HASH *name_hash,
|
||||
{
|
||||
if (exact)
|
||||
{
|
||||
if ((host &&
|
||||
if (!grant_name->host.hostname ||
|
||||
(host &&
|
||||
!my_strcasecmp(system_charset_info, host,
|
||||
grant_name->host.hostname)) ||
|
||||
(ip && !strcmp(ip, grant_name->host.hostname)))
|
||||
@ -4956,6 +4957,9 @@ static int handle_grant_struct(uint struct_no, bool drop,
|
||||
}
|
||||
if (! user)
|
||||
user= "";
|
||||
if (! host)
|
||||
host= "";
|
||||
|
||||
#ifdef EXTRA_DEBUG
|
||||
DBUG_PRINT("loop",("scan struct: %u index: %u user: '%s' host: '%s'",
|
||||
struct_no, idx, user, host));
|
||||
|
Loading…
x
Reference in New Issue
Block a user