diff options
author | unknown <iggy@rolltop.ignatz42.dyndns.org> | 2006-07-06 15:00:31 -0400 |
---|---|---|
committer | unknown <iggy@rolltop.ignatz42.dyndns.org> | 2006-07-06 15:00:31 -0400 |
commit | 471b1514f76aa88b9c856f1fcfbd71ec4c9e2643 (patch) | |
tree | 6c6704b9c905feebbef1f6948d465888f33a9e43 | |
parent | 17986f7cae70ce27ef8a43b4403dbf203c3ef277 (diff) | |
parent | 0f9725ad1fb99385ab0d184cf0851670fee37bbe (diff) | |
download | mariadb-git-471b1514f76aa88b9c856f1fcfbd71ec4c9e2643.tar.gz |
Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint
into rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1_bug16180
-rw-r--r-- | mysql-test/r/grant2.result | 10 | ||||
-rw-r--r-- | mysql-test/t/grant2.test | 17 | ||||
-rw-r--r-- | sql/set_var.cc | 3 |
3 files changed, 29 insertions, 1 deletions
diff --git a/mysql-test/r/grant2.result b/mysql-test/r/grant2.result index 85963705718..c047dc033c6 100644 --- a/mysql-test/r/grant2.result +++ b/mysql-test/r/grant2.result @@ -143,3 +143,13 @@ flush privileges; drop user mysqltest_3@host3; drop user mysqltest_1@host1, mysqltest_2@host2, mysqltest_4@host4, mysqltest_5@host5, mysqltest_6@host6, mysqltest_7@host7; +create database mysqltest_1; +grant select, insert, update on `mysqltest\_1`.* to mysqltest_1@localhost; +set sql_log_off = 1; +ERROR HY000: Access denied; you need the SUPER privilege for this operation +set sql_log_bin = 0; +ERROR HY000: Access denied; you need the SUPER privilege for this operation +delete from mysql.user where user like 'mysqltest\_1'; +delete from mysql.db where user like 'mysqltest\_1'; +drop database mysqltest_1; +flush privileges; diff --git a/mysql-test/t/grant2.test b/mysql-test/t/grant2.test index 79ea7f70712..9da95cd42da 100644 --- a/mysql-test/t/grant2.test +++ b/mysql-test/t/grant2.test @@ -238,5 +238,22 @@ connect (con9,127.0.0.1,root,,test,$MASTER_MYPORT,); disconnect con9; connection default; +# +# Bug# 16180 - Setting SQL_LOG_OFF without SUPER privilege is silently ignored +# +create database mysqltest_1; +grant select, insert, update on `mysqltest\_1`.* to mysqltest_1@localhost; +connect (con10,localhost,mysqltest_1,,); +connection con10; +--error 1227 +set sql_log_off = 1; +--error 1227 +set sql_log_bin = 0; +disconnect con10; +connection default; +delete from mysql.user where user like 'mysqltest\_1'; +delete from mysql.db where user like 'mysqltest\_1'; +drop database mysqltest_1; +flush privileges; # End of 4.1 tests diff --git a/sql/set_var.cc b/sql/set_var.cc index bf68a102537..920b153fadd 100644 --- a/sql/set_var.cc +++ b/sql/set_var.cc @@ -423,7 +423,8 @@ static sys_var_thd_bit sys_sql_big_tables("sql_big_tables", 0, static sys_var_thd_bit sys_big_selects("sql_big_selects", 0, set_option_bit, OPTION_BIG_SELECTS); -static sys_var_thd_bit sys_log_off("sql_log_off", 0, +static sys_var_thd_bit sys_log_off("sql_log_off", + check_log_update, set_option_bit, OPTION_LOG_OFF); static sys_var_thd_bit sys_log_update("sql_log_update", |