1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

Fix for bug #6116 "SET time_zone := ... requires access to

mysql.time_zone* tables".

We are excluding implicitly used time zone tables from privilege
checking.


mysql-test/r/timezone2.result:
  Added test for bug #6116 "SET time_zone := ... requires access to 
  mysql.time_zone tables"
mysql-test/t/timezone2.test:
  Added test for bug #6116 "SET time_zone := ... requires access to 
  mysql.time_zone tables"
sql/sql_parse.cc:
  check_table_access(): we should avoid privilege checking for implicitly
  used time zone tables.
sql/tztime.cc:
  Indicated dependancy between my_tz_get_table_list() function and
  my_tz_check_n_skip_implicit_tables() function.
sql/tztime.h:
  Added my_tz_check_n_skip_implicit_tables() function which allows easily
  determine whenever we have found beggining of the list of implicitly used
  time zone tables and fast-forward to its end.
This commit is contained in:
unknown
2004-10-21 22:18:00 +04:00
parent 8f82360081
commit 8537cf2f4b
5 changed files with 85 additions and 1 deletions

View File

@@ -3724,7 +3724,10 @@ check_table_access(THD *thd, ulong want_access,TABLE_LIST *tables,
TABLE_LIST *org_tables=tables;
for (; tables ; tables=tables->next)
{
if (tables->derived || (tables->table && (int)tables->table->tmp_table))
if (tables->derived ||
(tables->table && (int)tables->table->tmp_table) ||
my_tz_check_n_skip_implicit_tables(&tables,
thd->lex->time_zone_tables_used))
continue;
if ((thd->master_access & want_access) == (want_access & ~EXTRA_ACL) &&
thd->db)