in sql/sql_multi_tenancy.cc [35:169]
static bool filter_command(enum_sql_command sql_command)
{
switch (sql_command) {
case SQLCOM_ALTER_TABLE:
case SQLCOM_ALTER_DB:
case SQLCOM_ALTER_PROCEDURE:
case SQLCOM_ALTER_FUNCTION:
case SQLCOM_ALTER_TABLESPACE:
case SQLCOM_ALTER_SERVER:
case SQLCOM_ALTER_EVENT:
case SQLCOM_ALTER_DB_UPGRADE:
case SQLCOM_ALTER_USER:
case SQLCOM_RENAME_TABLE:
case SQLCOM_RENAME_USER:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_ALTER);
case SQLCOM_BEGIN:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_BEGIN);
case SQLCOM_COMMIT:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_COMMIT);
case SQLCOM_CREATE_TABLE:
case SQLCOM_CREATE_INDEX:
case SQLCOM_CREATE_DB:
case SQLCOM_CREATE_FUNCTION:
case SQLCOM_CREATE_NPROCEDURE:
case SQLCOM_CREATE_USER:
case SQLCOM_CREATE_PROCEDURE:
case SQLCOM_CREATE_SPFUNCTION:
case SQLCOM_CREATE_VIEW:
case SQLCOM_CREATE_TRIGGER:
case SQLCOM_CREATE_SERVER:
case SQLCOM_CREATE_EVENT:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_CREATE);
case SQLCOM_DELETE:
case SQLCOM_DELETE_MULTI:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_DELETE);
case SQLCOM_DROP_TABLE:
case SQLCOM_DROP_INDEX:
case SQLCOM_DROP_DB:
case SQLCOM_DROP_FUNCTION:
case SQLCOM_DROP_NPROCEDURE:
case SQLCOM_DROP_USER:
case SQLCOM_DROP_PROCEDURE:
case SQLCOM_DROP_VIEW:
case SQLCOM_DROP_TRIGGER:
case SQLCOM_DROP_SERVER:
case SQLCOM_DROP_EVENT:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_DROP);
case SQLCOM_INSERT:
case SQLCOM_INSERT_SELECT:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_INSERT);
case SQLCOM_LOAD:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_LOAD);
case SQLCOM_SELECT:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_SELECT);
case SQLCOM_SET_OPTION:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_SET);
case SQLCOM_REPLACE:
case SQLCOM_REPLACE_SELECT:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_REPLACE);
case SQLCOM_ROLLBACK:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_ROLLBACK);
case SQLCOM_TRUNCATE:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_TRUNCATE);
case SQLCOM_UPDATE:
case SQLCOM_UPDATE_MULTI:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_UPDATE);
case SQLCOM_SHOW_DATABASES:
case SQLCOM_SHOW_TABLES:
case SQLCOM_SHOW_FIELDS:
case SQLCOM_SHOW_KEYS:
case SQLCOM_SHOW_VARIABLES:
case SQLCOM_SHOW_STATUS:
case SQLCOM_SHOW_ENGINE_LOGS:
case SQLCOM_SHOW_ENGINE_STATUS:
case SQLCOM_SHOW_ENGINE_MUTEX:
case SQLCOM_SHOW_PROCESSLIST:
case SQLCOM_SHOW_TRANSACTION_LIST:
case SQLCOM_SHOW_MASTER_STAT:
case SQLCOM_SHOW_SLAVE_STAT:
case SQLCOM_SHOW_GRANTS:
case SQLCOM_SHOW_CREATE:
case SQLCOM_SHOW_CHARSETS:
case SQLCOM_SHOW_COLLATIONS:
case SQLCOM_SHOW_CREATE_DB:
case SQLCOM_SHOW_TABLE_STATUS:
case SQLCOM_SHOW_TRIGGERS:
case SQLCOM_SHOW_BINLOGS:
case SQLCOM_SHOW_OPEN_TABLES:
case SQLCOM_SHOW_SLAVE_HOSTS:
case SQLCOM_SHOW_BINLOG_EVENTS:
case SQLCOM_SHOW_BINLOG_CACHE:
case SQLCOM_SHOW_WARNS:
case SQLCOM_SHOW_ERRORS:
case SQLCOM_SHOW_STORAGE_ENGINES:
case SQLCOM_SHOW_PRIVILEGES:
case SQLCOM_SHOW_CREATE_PROC:
case SQLCOM_SHOW_CREATE_FUNC:
case SQLCOM_SHOW_STATUS_PROC:
case SQLCOM_SHOW_STATUS_FUNC:
case SQLCOM_SHOW_PROC_CODE:
case SQLCOM_SHOW_FUNC_CODE:
case SQLCOM_SHOW_PLUGINS:
case SQLCOM_SHOW_CREATE_EVENT:
case SQLCOM_SHOW_EVENTS:
case SQLCOM_SHOW_CREATE_TRIGGER:
case SQLCOM_SHOW_PROFILE:
case SQLCOM_SHOW_PROFILES:
case SQLCOM_SHOW_RELAYLOG_EVENTS:
case SQLCOM_SHOW_ENGINE_TRX:
case SQLCOM_SHOW_MEMORY_STATUS:
case SQLCOM_SHOW_CONNECTION_ATTRIBUTES:
case SQLCOM_SHOW_RESOURCE_COUNTERS:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_SHOW);
case SQLCOM_CHANGE_DB:
return IS_BIT_SET(admission_control_filter, ADMISSION_CONTROL_USE);
default:
return false;
}
}