1#ifndef MYSQL_PLUGIN_AUTH_COMMON_INCLUDED
36#define MYSQL_PLUGIN_AUTH_COMMON_INCLUDED
39#define MYSQL_USERNAME_LENGTH 96
51#define CR_AUTH_PLUGIN_ERROR 3
58#define CR_AUTH_HANDSHAKE 2
65#define CR_AUTH_USER_CREDENTIALS 1
97#define CR_OK_HANDSHAKE_COMPLETE -2
103#define CR_OK_AUTH_IN_SANDBOX_MODE -3
114#if defined(_WIN32) && !defined(MYSQL_ABI_CHECK)
115#ifndef WIN32_LEAN_AND_MEAN
116#define WIN32_LEAN_AND_MEAN
131#if defined(_WIN32) && !defined(MYSQL_ABI_CHECK)
static char buf[MAX_BUF]
Definition: conf_to_src.cc:73
static int handle(int sql_errno, const char *sqlstate, const char *message, void *state)
Bridge function between the C++ API offered by this module and the C API of the parser service.
Definition: services.cc:64
struct result result
Definition: result.h:34
struct MYSQL_PLUGIN_VIO MYSQL_PLUGIN_VIO
Provides plugin access to communication channel.
net_async_status
Definition: plugin_auth_common.h:137
@ NET_ASYNC_NOT_READY
Definition: plugin_auth_common.h:139
@ NET_ASYNC_COMPLETE_NO_MORE_RESULTS
Definition: plugin_auth_common.h:141
@ NET_ASYNC_ERROR
Definition: plugin_auth_common.h:140
@ NET_ASYNC_COMPLETE
Definition: plugin_auth_common.h:138
Definition: plugin_auth_common.h:121
@ MYSQL_VIO_INVALID
Definition: plugin_auth_common.h:123
@ MYSQL_VIO_TCP
Definition: plugin_auth_common.h:124
@ MYSQL_VIO_PIPE
Definition: plugin_auth_common.h:126
@ MYSQL_VIO_SOCKET
Definition: plugin_auth_common.h:125
@ MYSQL_VIO_MEMORY
Definition: plugin_auth_common.h:127
int socket
it's set, if the protocol is SOCKET or TCP
Definition: plugin_auth_common.h:129
bool is_tls_established
Definition: plugin_auth_common.h:130
enum MYSQL_PLUGIN_VIO_INFO::@6 protocol
Provides plugin access to communication channel.
Definition: plugin_auth_common.h:147
enum net_async_status(* read_packet_nonblocking)(struct MYSQL_PLUGIN_VIO *vio, unsigned char **buf, int *result)
Non blocking version of read_packet.
Definition: plugin_auth_common.h:176
int(* write_packet)(struct MYSQL_PLUGIN_VIO *vio, const unsigned char *packet, int packet_len)
Plugin provides a buffer with data and the length and this function sends it as a packet.
Definition: plugin_auth_common.h:159
enum net_async_status(* write_packet_nonblocking)(struct MYSQL_PLUGIN_VIO *vio, const unsigned char *pkt, int pkt_len, int *result)
Non blocking version of write_packet.
Definition: plugin_auth_common.h:183
void(* info)(struct MYSQL_PLUGIN_VIO *vio, struct MYSQL_PLUGIN_VIO_INFO *info)
Fills in a MYSQL_PLUGIN_VIO_INFO structure, providing the information about the connection.
Definition: plugin_auth_common.h:166
int(* read_packet)(struct MYSQL_PLUGIN_VIO *vio, unsigned char **buf)
Plugin provides a pointer reference and this function sets it to the contents of any incoming packet.
Definition: plugin_auth_common.h:153
#define HANDLE
Definition: violite.h:159