diff options
author | Vicențiu Ciorbaru <cvicentiu@gmail.com> | 2013-10-18 05:41:25 -0700 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2013-10-18 05:41:25 -0700 |
commit | ce4851c3d0de5c7e59b65d3472c6574eb850a90e (patch) | |
tree | 5b0e04272beedf705cc046033f64eb3c16a21a2f /sql/sql_acl.h | |
parent | db850c525fdd7a2bcb24fd08a9d2c44824be788f (diff) | |
download | mariadb-git-ce4851c3d0de5c7e59b65d3472c6574eb850a90e.tar.gz |
Reworked the implementation of create role and drop role.
Also fixed issue with drop role not clearing internal memory entry
for that role. The issue was due to a condition introduced in handle_grant_data
Updated testsuite to also check the possible error conditions.
Diffstat (limited to 'sql/sql_acl.h')
-rw-r--r-- | sql/sql_acl.h | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sql/sql_acl.h b/sql/sql_acl.h index 20d03211fa1..cace79cb441 100644 --- a/sql/sql_acl.h +++ b/sql/sql_acl.h @@ -230,12 +230,10 @@ ulong get_column_grant(THD *thd, GRANT_INFO *grant, bool mysql_show_grants(THD *thd, LEX_USER *user); void get_privilege_desc(char *to, uint max_length, ulong access); void get_mqh(const char *user, const char *host, USER_CONN *uc); -bool mysql_create_user(THD *thd, List <LEX_USER> &list); -bool mysql_drop_user(THD *thd, List <LEX_USER> &list); +bool mysql_create_user(THD *thd, List <LEX_USER> &list, bool handle_as_role); +bool mysql_drop_user(THD *thd, List <LEX_USER> &list, bool handle_as_role); bool mysql_rename_user(THD *thd, List <LEX_USER> &list); bool mysql_revoke_all(THD *thd, List <LEX_USER> &list); -bool mysql_create_role(THD *thd, List <LEX_USER> &list); -bool mysql_drop_role(THD *thd, List <LEX_USER> &list); void fill_effective_table_privileges(THD *thd, GRANT_INFO *grant, const char *db, const char *table); bool sp_revoke_privileges(THD *thd, const char *sp_db, const char *sp_name, |