void * my_malloc(PSI_memory_key key, size_t size, int flags)
Allocates size bytes of memory.
Definition: my_memory.cc:57
 
void my_free(void *ptr)
Frees the memory pointed by the ptr.
Definition: my_memory.cc:81
 
int command_service_run_command(MYSQL_SESSION session, enum enum_server_command command, const union COM_DATA *data, const CHARSET_INFO *client_cs, const struct st_command_service_cbs *callbacks, enum cs_text_or_binary text_or_binary, void *service_callbacks_ctx)
Executes a server command in a session.
 
int mysql_acquire_locking_service_locks(MYSQL_THD opaque_thd, const char *lock_namespace, const char **lock_names, size_t lock_num, enum enum_locking_service_lock_type lock_type, uint64_t lock_timeout)
 
int mysql_release_locking_service_locks(MYSQL_THD opaque_thd, const char *lock_namespace)
Definition: locking_service.cc:186
 
int my_plugin_log_message(MYSQL_PLUGIN *plugin, enum plugin_log_level level, const char *format,...)
Definition: log.cc:2328
 
char * my_strdup(PSI_memory_key key, const char *from, myf_t flags)
Definition: my_malloc.cc:548
 
void * my_memdup(PSI_memory_key key, const void *from, size_t length, myf_t flags)
Definition: my_malloc.cc:540
 
void my_claim(const void *ptr, bool claim)
Definition: my_malloc.cc:458
 
char * my_strndup(PSI_memory_key key, const char *from, size_t length, myf_t flags)
Definition: my_malloc.cc:556
 
void * my_realloc(PSI_memory_key key, void *ptr, size_t size, myf_t flags)
Definition: my_malloc.cc:449
 
int my_key_fetch(const char *, char **, const char *, void **, size_t *)
Iterates over all active keyring plugins and calls the mysql_key_fetch API for the first one found.
Definition: keyring_service.cc:125
 
int my_key_store(const char *, const char *, const char *, const void *, size_t)
Iterates over all active keyring plugins calls the mysql_key_store API for the first one found.
Definition: keyring_service.cc:141
 
int my_key_generate(const char *, const char *, const char *, size_t)
Iterates over all active keyring plugins and calls the mysql_key_generate API for the first one found...
Definition: keyring_service.cc:166
 
int my_key_remove(const char *, const char *)
Iterates over all active keyring plugins and calls the mysql_key_remove API for the first one found.
Definition: keyring_service.cc:154
 
int my_calculate_password_strength(const char *, unsigned int)
Invoke the component/plugin to evalue the strength of a password.
Definition: password_policy_service.cc:131
 
int my_validate_password_policy(const char *, unsigned int)
Invoke the component/plugin to validate the input password.
Definition: password_policy_service.cc:73
 
mysql_string_handle mysql_string_to_lowercase(mysql_string_handle string_handle)
Definition: string_service.cc:147
 
int mysql_string_iterator_isdigit(mysql_string_iterator_handle iterator_handle)
Definition: string_service.cc:137
 
void mysql_string_iterator_free(mysql_string_iterator_handle)
Definition: string_service.cc:77
 
void mysql_string_free(mysql_string_handle)
Definition: string_service.cc:67
 
mysql_string_iterator_handle mysql_string_get_iterator(mysql_string_handle string_handle)
Definition: string_service.cc:82
 
int mysql_string_iterator_islower(mysql_string_iterator_handle iterator_handle)
Definition: string_service.cc:127
 
int mysql_string_iterator_next(mysql_string_iterator_handle iterator_handle)
Definition: string_service.cc:94
 
int mysql_string_iterator_isupper(mysql_string_iterator_handle iterator_handle)
Definition: string_service.cc:117
 
int mysql_string_convert_to_char_ptr(mysql_string_handle string_handle, const char *charset_name, char *buffer, unsigned int buffer_size, int *error)
Definition: string_service.cc:51
 
void mysql_parser_join_thread(struct my_thread_handle *thread_handle)
Definition: parser_service.cc:219
 
int mysql_parser_get_statement_type(MYSQL_THD thd)
Definition: parser_service.cc:285
 
int mysql_parser_parse(MYSQL_THD thd, const MYSQL_LEX_STRING query, unsigned char is_prepared, sql_condition_handler_function handle_condition, void *condition_handler_state)
Definition: parser_service.cc:234
 
int mysql_parser_get_statement_digest(MYSQL_THD thd, unsigned char *digest)
Definition: parser_service.cc:311
 
void mysql_parser_start_thread(MYSQL_THD thd, callback_function fun, void *arg, struct my_thread_handle *thread_handle)
 
MYSQL_THD mysql_parser_current_session()
Definition: parser_service.cc:139
 
void mysql_parser_set_current_database(MYSQL_THD thd, const MYSQL_LEX_STRING db)
Definition: parser_service.cc:223
 
int mysql_parser_visit_tree(MYSQL_THD thd, parse_node_visit_function processor, unsigned char *arg)
Definition: parser_service.cc:333
 
MYSQL_THD mysql_parser_open_session()
Definition: parser_service.cc:141
 
MYSQL_LEX_STRING mysql_parser_item_string(MYSQL_ITEM item)
Definition: parser_service.cc:339
 
int mysql_parser_extract_prepared_params(MYSQL_THD thd, int *positions)
Definition: parser_service.cc:325
 
int mysql_parser_get_number_params(MYSQL_THD thd)
Definition: parser_service.cc:321
 
MYSQL_LEX_STRING mysql_parser_get_normalized_query(MYSQL_THD thd)
Definition: parser_service.cc:359
 
MYSQL_LEX_STRING mysql_parser_get_query(MYSQL_THD thd)
Definition: parser_service.cc:353
 
void mysql_parser_free_string(MYSQL_LEX_STRING string)
Definition: parser_service.cc:351
 
const mysql_service_registry_t * mysql_plugin_registry_acquire()
Returns a new reference to the "registry" service.
Definition: plugin_registry_service.cc:47
 
int mysql_plugin_registry_release(const mysql_service_registry_t *)
Releases a registry service reference.
Definition: plugin_registry_service.cc:75
 
int set_transaction_ctx(Transaction_termination_ctx transaction_termination_ctx)
Definition: rpl_transaction_ctx.cc:91
 
void update_write_set_memory_size_limit(uint64 size_limit)
Definition: rpl_transaction_write_set_ctx.cc:173
 
void require_full_write_set(bool requires_ws)
Definition: rpl_transaction_write_set_ctx.cc:153
 
Transaction_write_set * get_transaction_write_set(unsigned long m_thread_id)
Definition: rpl_transaction_write_set_ctx.cc:193
 
void set_write_set_memory_size_limit(uint64 size_limit)
Definition: rpl_transaction_write_set_ctx.cc:168
 
my_svc_bool thd_get_security_context(MYSQL_THD, MYSQL_SECURITY_CONTEXT *out_ctx)
Gets the security context for the thread.
Definition: service_security_context.cc:55
 
my_svc_bool security_context_set_option(MYSQL_SECURITY_CONTEXT, const char *name, void *pvalue)
Sets a value for a named security context attribute Currently defined names are:
Definition: service_security_context.cc:304
 
my_svc_bool security_context_lookup(MYSQL_SECURITY_CONTEXT ctx, const char *user, const char *host, const char *ip, const char *db)
Looks up in the defined user accounts an account based on the user@host[ip] combo supplied and checks...
Definition: service_security_context.cc:177
 
my_svc_bool security_context_create(MYSQL_SECURITY_CONTEXT *out_ctx)
Creates a new security context and initializes it with the defaults (no access, no user etc).
Definition: service_security_context.cc:109
 
my_svc_bool security_context_get_option(MYSQL_SECURITY_CONTEXT, const char *name, void *inout_pvalue)
Reads a named security context attribute and returns its value.
Definition: service_security_context.cc:239
 
my_svc_bool security_context_copy(MYSQL_SECURITY_CONTEXT in_ctx, MYSQL_SECURITY_CONTEXT *out_ctx)
Duplicates a security context.
Definition: service_security_context.cc:146
 
my_svc_bool thd_set_security_context(MYSQL_THD, MYSQL_SECURITY_CONTEXT in_ctx)
Sets a new security context for the thread.
Definition: service_security_context.cc:80
 
my_svc_bool security_context_destroy(MYSQL_SECURITY_CONTEXT ctx)
Deallocates a security context.
Definition: service_security_context.cc:127
 
int srv_session_init_thread(const void *plugin)
Initializes the current physical thread to use with session service.
Definition: srv_session_service.cc:60
 
int srv_session_attach(MYSQL_SESSION session, MYSQL_THD *ret_previous_thd)
Attaches a session to current physical thread.
Definition: srv_session_service.cc:232
 
void srv_session_deinit_thread()
Deinitializes the current physical thread to use with session service.
Definition: srv_session_service.cc:67
 
int srv_session_server_is_available()
Returns if the server is available (not booting or shutting down)
Definition: srv_session_service.cc:221
 
int srv_session_close(MYSQL_SESSION session)
Closes a previously opened session.
 
MYSQL_SESSION srv_session_open(srv_session_error_cb error_cb, void *plugin_ctx)
Opens a server session.
Definition: srv_session_service.cc:145
 
int srv_session_detach(MYSQL_SESSION session)
Detaches a session from current physical thread.
 
MYSQL_THD srv_session_info_get_thd(MYSQL_SESSION session)
Returns the THD of a session.
 
uint16_t srv_session_info_get_client_port(MYSQL_SESSION session)
Returns the client port of a session.
 
unsigned int srv_session_info_thread_count(const void *plugin)
Returns the number opened sessions in thread initialized by srv_session service.
Definition: srv_session_info_service.cc:144
 
int srv_session_info_killed(MYSQL_SESSION session)
Returns whether the session was killed.
 
unsigned int srv_session_info_session_count()
Returns the number opened sessions in thread initialized by srv_session service.
Definition: srv_session_info_service.cc:133
 
int srv_session_info_set_client_port(MYSQL_SESSION session, uint16_t port)
Sets the client port of a session.
 
LEX_CSTRING srv_session_info_get_current_db(MYSQL_SESSION session)
Returns the current database of a session.
 
int srv_session_info_set_connection_type(MYSQL_SESSION session, enum enum_vio_type type)
Sets the connection type of a session.
 
my_thread_id srv_session_info_get_session_id(MYSQL_SESSION session)
Returns the ID of a session.
 
char * thd_strdup(MYSQL_THD thd, const char *str)
Definition: sql_thd_api.cc:605
 
void * thd_calloc(MYSQL_THD thd, size_t size)
Definition: sql_thd_api.cc:603
 
MYSQL_LEX_STRING * thd_make_lex_string(MYSQL_THD thd, MYSQL_LEX_STRING *lex_str, const char *str, size_t size, int allocate_lex_string)
Create a LEX_STRING in this connection's local memory pool.
Definition: sql_thd_api.cc:613
 
char * thd_strmake(MYSQL_THD thd, const char *str, size_t size)
Definition: sql_thd_api.cc:609
 
void * thd_memdup(MYSQL_THD thd, const void *str, size_t size)
Definition: sql_thd_api.cc:622
 
void * thd_alloc(MYSQL_THD thd, size_t size)
Allocate memory in the connection's local memory pool.
Definition: sql_thd_api.cc:601
 
void thd_wait_end(MYSQL_THD thd)
Interface for MySQL Server, plugins and storage engines to report when they waking up from a sleep/st...
Definition: sql_thd_api.cc:668
 
void thd_wait_begin(MYSQL_THD thd, int wait_type)
Interface for MySQL Server, plugins and storage engines to report when they are going to sleep/stall.
Definition: sql_thd_api.cc:650
 
int my_connection_handler_reset()
Destroys the current connection handler and restores the previous.
Definition: connection_handler_manager.cc:304
 
int my_connection_handler_set(struct Connection_handler_functions *chf, struct THD_event_functions *tef)
Instantiates Plugin_connection_handler based on the supplied Conection_handler_functions and sets it ...
Definition: connection_handler_manager.cc:287
 
#define VERSION_mysql_malloc
Definition: service_versions.h:40
 
#define VERSION_my_plugin_log
Definition: service_versions.h:38
 
#define VERSION_locking_service
Definition: service_versions.h:46
 
#define VERSION_mysql_keyring_service
Definition: service_versions.h:49
 
#define VERSION_security_context_service
Definition: service_versions.h:45
 
#define VERSION_thd_alloc
Definition: service_versions.h:35
 
#define VERSION_my_thread_scheduler
Definition: service_versions.h:37
 
#define VERSION_rpl_transaction_ctx_service
Definition: service_versions.h:43
 
#define VERSION_transaction_write_set_service
Definition: service_versions.h:44
 
#define VERSION_plugin_registry_service
Definition: service_versions.h:50
 
#define VERSION_thd_wait
Definition: service_versions.h:36
 
#define VERSION_mysql_password_policy
Definition: service_versions.h:41
 
#define VERSION_srv_session_service
Definition: service_versions.h:48
 
#define VERSION_mysql_string
Definition: service_versions.h:39
 
#define VERSION_srv_session_info_service
Definition: service_versions.h:47
 
#define VERSION_command
Definition: service_versions.h:34
 
#define VERSION_parser
Definition: service_versions.h:42
 
static struct mysql_parser_service_st parser_handler
Definition: sql_plugin_services.h:274
 
static struct mysql_locking_service_st locking_service_handler
Definition: sql_plugin_services.h:292
 
static struct mysql_password_policy_service_st mysql_password_policy_handler
Definition: sql_plugin_services.h:271
 
static struct my_thread_scheduler_service my_thread_scheduler_handler
Definition: sql_plugin_services.h:254
 
static struct plugin_registry_service_st plugin_registry_handler
Definition: sql_plugin_services.h:304
 
static struct srv_session_info_service_st srv_session_info_handler
Definition: sql_plugin_services.h:240
 
static struct thd_alloc_service_st thd_alloc_handler
Definition: sql_plugin_services.h:247
 
static struct srv_session_service_st srv_session_service_handler
Definition: sql_plugin_services.h:230
 
static struct thd_wait_service_st thd_wait_handler
Definition: sql_plugin_services.h:251
 
static struct mysql_keyring_service_st mysql_keyring_handler
Definition: sql_plugin_services.h:301
 
static struct st_service_ref list_of_services[]
Definition: sql_plugin_services.h:307
 
static struct mysql_malloc_service_st mysql_malloc_handler
Definition: sql_plugin_services.h:268
 
static struct mysql_string_service_st mysql_string_handler
Definition: sql_plugin_services.h:260
 
static struct transaction_write_set_service_st transaction_write_set_handler
Definition: sql_plugin_services.h:288
 
static struct my_plugin_log_service my_plugin_log_handler
Definition: sql_plugin_services.h:257
 
static struct security_context_service_st security_context_handler
Definition: sql_plugin_services.h:295
 
static struct command_service_st command_handler
Definition: sql_plugin_services.h:236
 
static struct rpl_transaction_ctx_service_st rpl_transaction_ctx_handler
Definition: sql_plugin_services.h:284
 
Definition: service_command.h:394
 
Enables plugins to log messages into the server's error log.
Definition: service_my_plugin_log.h:49
 
Definition: service_thread_scheduler.h:36
 
This service allows plugins to interact with key store backends.
Definition: service_mysql_keyring.h:61
 
This service provides support for taking read/write locks.
Definition: service_locking.h:107
 
This service allows plugins to allocate and free memory through the server's memory handling routines...
Definition: service_mysql_alloc.h:59
 
Definition: service_parser.h:197
 
This service allows plugins to validate passwords based on a common policy.
Definition: service_mysql_password_policy.h:46
 
Definition: service_mysql_string.h:39
 
A bridge service allowing plugins to work with the registry.
Definition: service_plugin_registry.h:47
 
Definition: service_rpl_transaction_ctx.h:63
 
This service provides functions for plugins and storage engines to manipulate the thread's security c...
Definition: service_security_context.h:72
 
Definition: service_srv_session_info.h:43
 
Definition: service_srv_session.h:42
 
A server-side reference to a plugin service.
Definition: sql_plugin_services.h:221
 
void * service
The actual server side service structure pointer.
Definition: sql_plugin_services.h:227
 
uint version
The service version provided by the server.
Definition: sql_plugin_services.h:225
 
const char * name
The name of the service pointer symbol exported by the plugin.
Definition: sql_plugin_services.h:223
 
Definition: service_thd_alloc.h:47
 
Definition: service_thd_wait.h:91
 
Definition: service_rpl_transaction_write_set.h:62
 
unsigned int uint
Definition: uca9-dump.cc:75