MySQL 8.4.2
Source Code Documentation
|
MySQL Client Plugin API. More...
Go to the source code of this file.
Classes | |
struct | st_mysql_client_plugin |
struct | auth_plugin_t |
Macros | |
#define | MYSQL_CLIENT_PLUGIN_INCLUDED |
#define | MYSQL_CLIENT_PLUGIN_EXPORT |
#define | MYSQL_CLIENT_reserved1 0 |
#define | MYSQL_CLIENT_reserved2 1 |
#define | MYSQL_CLIENT_AUTHENTICATION_PLUGIN 2 |
#define | MYSQL_CLIENT_TRACE_PLUGIN 3 |
#define | MYSQL_CLIENT_TELEMETRY_PLUGIN 4 |
#define | MYSQL_CLIENT_AUTHENTICATION_PLUGIN_INTERFACE_VERSION 0x0200 |
#define | MYSQL_CLIENT_TRACE_PLUGIN_INTERFACE_VERSION 0x0200 |
#define | MYSQL_CLIENT_TELEMETRY_PLUGIN_INTERFACE_VERSION 0x0200 |
#define | MYSQL_CLIENT_MAX_PLUGINS 5 |
#define | MYSQL_CLIENT_PLUGIN_AUTHOR_ORACLE "Oracle Corporation" |
#define | mysql_declare_client_plugin(X) |
#define | mysql_end_client_plugin } |
#define | MYSQL_CLIENT_PLUGIN_HEADER |
Typedefs | |
typedef struct auth_plugin_t | st_mysql_client_plugin_AUTHENTICATION |
Functions | |
struct st_mysql_client_plugin * | mysql_load_plugin (struct MYSQL *mysql, const char *name, int type, int argc,...) |
loads a plugin and initializes it More... | |
struct st_mysql_client_plugin * | mysql_load_plugin_v (struct MYSQL *mysql, const char *name, int type, int argc, va_list args) |
loads a plugin and initializes it, taking va_list as an argument More... | |
struct st_mysql_client_plugin * | mysql_client_find_plugin (struct MYSQL *mysql, const char *name, int type) |
finds an already loaded plugin by name, or loads it, if necessary More... | |
struct st_mysql_client_plugin * | mysql_client_register_plugin (struct MYSQL *mysql, struct st_mysql_client_plugin *plugin) |
adds a plugin structure to the list of loaded plugins More... | |
int | mysql_plugin_options (struct st_mysql_client_plugin *plugin, const char *option, const void *value) |
set plugin options More... | |
int | mysql_plugin_get_option (struct st_mysql_client_plugin *plugin, const char *option, void *value) |
get plugin options More... | |
MySQL Client Plugin API.
This file defines the API for plugins that work on the client side
#define MYSQL_CLIENT_AUTHENTICATION_PLUGIN 2 |
#define MYSQL_CLIENT_AUTHENTICATION_PLUGIN_INTERFACE_VERSION 0x0200 |
#define MYSQL_CLIENT_MAX_PLUGINS 5 |
#define MYSQL_CLIENT_PLUGIN_AUTHOR_ORACLE "Oracle Corporation" |
#define MYSQL_CLIENT_PLUGIN_EXPORT |
#define MYSQL_CLIENT_PLUGIN_HEADER |
#define MYSQL_CLIENT_PLUGIN_INCLUDED |
#define MYSQL_CLIENT_reserved1 0 |
#define MYSQL_CLIENT_reserved2 1 |
#define MYSQL_CLIENT_TELEMETRY_PLUGIN 4 |
#define MYSQL_CLIENT_TELEMETRY_PLUGIN_INTERFACE_VERSION 0x0200 |
#define MYSQL_CLIENT_TRACE_PLUGIN 3 |
#define MYSQL_CLIENT_TRACE_PLUGIN_INTERFACE_VERSION 0x0200 |
#define mysql_declare_client_plugin | ( | X | ) |
#define mysql_end_client_plugin } |
typedef struct auth_plugin_t st_mysql_client_plugin_AUTHENTICATION |
struct st_mysql_client_plugin * mysql_client_find_plugin | ( | struct MYSQL * | mysql, |
const char * | name, | ||
int | type | ||
) |
finds an already loaded plugin by name, or loads it, if necessary
mysql | MYSQL structure. |
name | a name of the plugin to load |
type | type of plugin that should be loaded |
a | pointer to the plugin, or NULL in case of a failure |
struct st_mysql_client_plugin * mysql_client_register_plugin | ( | struct MYSQL * | mysql, |
struct st_mysql_client_plugin * | plugin | ||
) |
adds a plugin structure to the list of loaded plugins
This is useful if an application has the necessary functionality (for example, a special load data handler) statically linked into the application binary. It can use this function to register the plugin directly, avoiding the need to factor it out into a shared object.
mysql | MYSQL structure. It is only used for error reporting |
plugin | an st_mysql_client_plugin structure to register |
a | pointer to the plugin, or NULL in case of a failure |
struct st_mysql_client_plugin * mysql_load_plugin | ( | struct MYSQL * | mysql, |
const char * | name, | ||
int | type, | ||
int | argc, | ||
... | |||
) |
loads a plugin and initializes it
mysql | MYSQL structure. |
name | a name of the plugin to load |
type | type of plugin that should be loaded, -1 to disable type check |
argc | number of arguments to pass to the plugin initialization function |
... | arguments for the plugin initialization function |
a | pointer to the loaded plugin, or NULL in case of a failure |
struct st_mysql_client_plugin * mysql_load_plugin_v | ( | struct MYSQL * | mysql, |
const char * | name, | ||
int | type, | ||
int | argc, | ||
va_list | args | ||
) |
loads a plugin and initializes it, taking va_list as an argument
This is the same as mysql_load_plugin, but take va_list instead of a list of arguments.
mysql | MYSQL structure. |
name | a name of the plugin to load |
type | type of plugin that should be loaded, -1 to disable type check |
argc | number of arguments to pass to the plugin initialization function |
args | arguments for the plugin initialization function |
a | pointer to the loaded plugin, or NULL in case of a failure |
int mysql_plugin_get_option | ( | struct st_mysql_client_plugin * | plugin, |
const char * | option, | ||
void * | value | ||
) |
get plugin options
Can be used to get options from a plugin. This function may be called multiple times to get several options
plugin | an st_mysql_client_plugin structure | |
option | a string which specifies the option to get | |
[out] | value | value for the option. |
0 | on success, 1 in case of failure |
int mysql_plugin_options | ( | struct st_mysql_client_plugin * | plugin, |
const char * | option, | ||
const void * | value | ||
) |
set plugin options
Can be used to set extra options and affect behavior for a plugin. This function may be called multiple times to set several options
plugin | an st_mysql_client_plugin structure |
option | a string which specifies the option to set |
value | value for the option. |
0 | on success, 1 in case of failure |