Browse Source

Fixed bug#36742 - GRANT hostname case handling inconsistent.

mysql-test/r/grant.result:
  It was added result for test case for bug#36742.
mysql-test/t/grant.test:
  It was added test case for bug#36742.
sql/sql_yacc.yy:
  It was added convertation of host name part of user name to lowercase.
pull/374/head
Dmitry Shulga 15 years ago
parent
commit
8169faec27
  1. 11
      mysql-test/r/grant.result
  2. 10
      mysql-test/t/grant.test
  3. 6
      sql/sql_yacc.yy

11
mysql-test/r/grant.result

@ -1429,3 +1429,14 @@ DROP USER 'testbug'@localhost;
DROP TABLE db2.t1;
DROP DATABASE db1;
DROP DATABASE db2;
#
# Bug #36742
#
grant usage on Foo.* to myuser@Localhost identified by 'foo';
grant select on Foo.* to myuser@localhost;
select host,user from mysql.user where User='myuser';
host user
localhost myuser
revoke select on Foo.* from myuser@localhost;
delete from mysql.user where User='myuser';
flush privileges;

10
mysql-test/t/grant.test

@ -1550,5 +1550,15 @@ DROP TABLE db2.t1;
DROP DATABASE db1;
DROP DATABASE db2;
--echo #
--echo # Bug #36742
--echo #
grant usage on Foo.* to myuser@Localhost identified by 'foo';
grant select on Foo.* to myuser@localhost;
select host,user from mysql.user where User='myuser';
revoke select on Foo.* from myuser@localhost;
delete from mysql.user where User='myuser';
flush privileges;
# Wait till we reached the initial number of concurrent sessions
--source include/wait_until_count_sessions.inc

6
sql/sql_yacc.yy

@ -11567,6 +11567,12 @@ user:
system_charset_info, 0) ||
check_host_name(&$$->host))
MYSQL_YYABORT;
/*
Convert hostname part of username to lowercase.
It's OK to use in-place lowercase as long as
the character set is utf8.
*/
my_casedn_str(system_charset_info, $$->host.str);
}
| CURRENT_USER optional_braces
{

Loading…
Cancel
Save