Commit 2af5e25c authored by davi@mysql.com/endora.local's avatar davi@mysql.com/endora.local
Browse files

Bug#32710: SHOW INNODB STATUS requires SUPER

Changed "SHOW ENGINE ... STATUS" and "SHOW ENGINE ... MUTEX"
to require the PROCESS privilege, instead of SUPER.

Fixed by Damien Katz
parent bd4e8754
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -1427,4 +1427,9 @@ DROP FUNCTION f1;
DROP TABLE t1;
DROP EVENT ev1;
SHOW TABLE TYPES;
CREATE USER test_u@localhost;
GRANT PROCESS ON *.* TO test_u@localhost;
SHOW ENGINE MYISAM MUTEX;
SHOW ENGINE MYISAM STATUS;
DROP USER test_u@localhost;
End of 5.1 tests
+19 −0
Original line number Diff line number Diff line
@@ -1115,5 +1115,24 @@ DROP EVENT ev1;
SHOW TABLE TYPES;
--enable_result_log

#
# Bug #32710: SHOW INNODB STATUS requires SUPER
#


CREATE USER test_u@localhost;
GRANT PROCESS ON *.* TO test_u@localhost;

connect (conn1, localhost, test_u,,);

--disable_result_log
SHOW ENGINE MYISAM MUTEX;
SHOW ENGINE MYISAM STATUS;
--enable_result_log

disconnect conn1;
connection default;
DROP USER test_u@localhost;


--echo End of 5.1 tests
+2 −2
Original line number Diff line number Diff line
@@ -2271,14 +2271,14 @@ mysql_execute_command(THD *thd)
#endif /* HAVE_REPLICATION */
  case SQLCOM_SHOW_ENGINE_STATUS:
    {
      if (check_global_access(thd, SUPER_ACL))
      if (check_global_access(thd, PROCESS_ACL))
        goto error;
      res = ha_show_status(thd, lex->create_info.db_type, HA_ENGINE_STATUS);
      break;
    }
  case SQLCOM_SHOW_ENGINE_MUTEX:
    {
      if (check_global_access(thd, SUPER_ACL))
      if (check_global_access(thd, PROCESS_ACL))
        goto error;
      res = ha_show_status(thd, lex->create_info.db_type, HA_ENGINE_MUTEX);
      break;