23#ifndef DYNAMIC_PRIVILEGES_IMPL_H
24#define DYNAMIC_PRIVILEGES_IMPL_H
38 size_t privilege_str_len));
41 size_t privilege_str_len));
52 size_t privilege_str_len));
Interface implementation for registering and checking global dynamic privileges.
Definition: dynamic_privileges_impl.h:35
static mysql_service_status_t unregister_privilege(const char *privilege_str, size_t privilege_str_len) noexcept
Unregister a privilege identifiers in the list of known identifiers.
Definition: dynamic_privileges_impl.cc:141
static mysql_service_status_t has_global_grant(Security_context_handle, const char *privilege_str, size_t privilege_str_len) noexcept
Check if the supplied security context has the specified privilege identifier granted to it.
Definition: dynamic_privileges_impl.cc:183
static mysql_service_status_t register_privilege(const char *privilege_str, size_t privilege_str_len) noexcept
Register a privilege identifiers in the list of known identifiers.
Definition: dynamic_privileges_impl.cc:105
struct Security_context_handle_imp * Security_context_handle
Definition: dynamic_privilege.h:29
bool dynamic_privilege_init(void)
Bootstrap the dynamic privilege service by seeding it with server implementation-specific data.
Definition: dynamic_privileges_impl.cc:193
#define DEFINE_SERVICE_HANDLE(name)
Defines an object type that is meant for carrying handles to the implementation-specific objects used...
Definition: service.h:129
Specifies macros to define Service Implementations.
#define DEFINE_BOOL_METHOD(name, args)
A short macro to define method that returns bool, which is the most common case.
Definition: service_implementation.h:88