![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
#include "sql/auth/dynamic_privilege_table.h"#include <string.h>#include <memory>#include <string>#include "lex_string.h"#include "my_alloc.h"#include "my_base.h"#include "my_dbug.h"#include "my_inttypes.h"#include "my_sys.h"#include "mysql/components/my_service.h"#include "mysql/components/service.h"#include "mysql/components/services/bits/psi_bits.h"#include "mysql/components/services/dynamic_privilege.h"#include "mysql/components/services/log_shared.h"#include "mysql/components/services/registry.h"#include "mysql/mysql_lex_string.h"#include "mysql/service_plugin_registry.h"#include "mysql/strings/m_ctype.h"#include "mysqld_error.h"#include "sql/auth/auth_common.h"#include "sql/auth/auth_internal.h"#include "sql/auth/sql_auth_cache.h"#include "sql/auth/sql_user_table.h"#include "sql/current_thd.h"#include "sql/field.h"#include "sql/handler.h"#include "sql/iterators/row_iterator.h"#include "sql/key.h"#include "sql/mysqld.h"#include "sql/sql_const.h"#include "sql/sql_executor.h"#include "sql/table.h"Macros | |
| #define | MYSQL_DYNAMIC_PRIV_FIELD_USER 0 | 
| #define | MYSQL_DYNAMIC_PRIV_FIELD_HOST 1 | 
| #define | MYSQL_DYNAMIC_PRIV_FIELD_PRIV 2 | 
| #define | MYSQL_DYNAMIC_PRIV_FIELD_GRANT 3 | 
Functions | |
| Dynamic_privilege_register * | get_dynamic_privilege_register (void) | 
| This function returns a pointer to a global variable allocated on the heap.  More... | |
| bool | is_dynamic_privilege_defined (const std::string &str) | 
| Dynamic_privilege_register * | get_dynamic_privilege_deprecations (void) | 
| This function returns a pointer to a global variable allocated on the heap.  More... | |
| bool | is_dynamic_privilege_deprecated (const std::string &str) | 
| bool | populate_dynamic_privilege_caches (THD *thd, Table_ref *tablelst) | 
| Given an open table handler this function refresh the list of dynamic privilege grants by reading the dynamic_privilege table.  More... | |
| bool | modify_dynamic_privileges_in_table (THD *thd, TABLE *table, const Auth_id_ref &auth_id, const LEX_CSTRING &privilege, bool with_grant_option, bool delete_option) | 
| Delete or insert a row in the mysql.dynamic_privilege table.  More... | |
| bool | iterate_all_dynamic_privileges (THD *thd, std::function< bool(const char *)> action) | 
| bool | iterate_all_dynamic_non_deprecated_privileges (THD *thd, std::function< bool(const char *)> action) | 
Variables | |
| Dynamic_privilege_register | g_dynamic_privilege_register | 
| Dynamic_privilege_register | g_dynamic_privilege_deprecations | 
| #define MYSQL_DYNAMIC_PRIV_FIELD_GRANT 3 | 
| #define MYSQL_DYNAMIC_PRIV_FIELD_HOST 1 | 
| #define MYSQL_DYNAMIC_PRIV_FIELD_PRIV 2 | 
| #define MYSQL_DYNAMIC_PRIV_FIELD_USER 0 | 
| Dynamic_privilege_register * get_dynamic_privilege_deprecations | ( | void | ) | 
This function returns a pointer to a global variable allocated on the heap.
| Dynamic_privilege_register * get_dynamic_privilege_register | ( | void | ) | 
This function returns a pointer to a global variable allocated on the heap.
| bool is_dynamic_privilege_defined | ( | const std::string & | str | ) | 
| bool is_dynamic_privilege_deprecated | ( | const std::string & | str | ) | 
| bool iterate_all_dynamic_non_deprecated_privileges | ( | THD * | thd, | 
| std::function< bool(const char *)> | action | ||
| ) | 
| bool iterate_all_dynamic_privileges | ( | THD * | thd, | 
| std::function< bool(const char *)> | action | ||
| ) | 
| bool modify_dynamic_privileges_in_table | ( | THD * | thd, | 
| TABLE * | table, | ||
| const Auth_id_ref & | auth_id, | ||
| const LEX_CSTRING & | privilege, | ||
| bool | with_grant_option, | ||
| bool | delete_option | ||
| ) | 
Delete or insert a row in the mysql.dynamic_privilege table.
| thd | Thread handler | 
| table | The opened table to be modified | 
| auth_id | Target authorization ID | 
| privilege | Privilege object ID | 
| with_grant_option | Flag indicating if the grant option is set | 
| delete_option | Flag indicating if this is an insert or delete | 
If an error has occurred the DA is not set.
| true | An error occurred | 
| false | Success | 
Given an open table handler this function refresh the list of dynamic privilege grants by reading the dynamic_privilege table.
If an error is raised, this function will set the DA.
| thd | The thread handle | 
| tablelst | An handle to an open table | 
| true | An error occurred. | 
| false | Success | 
| Dynamic_privilege_register g_dynamic_privilege_deprecations | 
| Dynamic_privilege_register g_dynamic_privilege_register |