MySQL  8.0.22
Source Code Documentation
MPVIO_EXT Struct Reference

The internal version of what plugins know as MYSQL_PLUGIN_VIO, basically the context of the authentication session. More...

#include <sql_authentication.h>

Inheritance diagram for MPVIO_EXT:
MYSQL_PLUGIN_VIO

Public Types

enum  { SUCCESS, FAILURE, RESTART }
 when plugin returns a failure this tells us what really happened More...
 

Public Member Functions

bool can_authenticate ()
 

Public Attributes

MYSQL_SERVER_AUTH_INFO auth_info
 
const ACL_USERacl_user
 
Restrictionsrestrictions
 
plugin_ref plugin
 what plugin we're under More...
 
LEX_STRING db
 db name from the handshake packet More...
 
struct {
   const char *   plugin
 
   const char *   pkt
 pointers into NET::buff More...
 
   uint   pkt_len
 
cached_client_reply
 when restarting a plugin this caches the last client reply More...
 
struct {
   char *   pkt
 
   uint   pkt_len
 
cached_server_packet
 this caches the first plugin packet for restart request on the client More...
 
int packets_read
 
int packets_written
 counters for send/received packets More...
 
enum MPVIO_EXT:: { ... }  status
 when plugin returns a failure this tells us what really happened More...
 
char * scramble
 
MEM_ROOTmem_root
 
struct rand_structrand
 
my_thread_id thread_id
 
uintserver_status
 
Protocol_classicprotocol
 
ulong max_client_packet_length
 
const char * ip
 
const char * host
 
Thd_charset_adaptercharset_adapter
 
LEX_CSTRING acl_user_plugin
 
int vio_is_encrypted
 
- Public Attributes inherited from MYSQL_PLUGIN_VIO
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. More...
 
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. More...
 
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. More...
 
enum net_async_status(* read_packet_nonblocking )(struct MYSQL_PLUGIN_VIO *vio, unsigned char **buf, int *result)
 Non blocking version of read_packet. More...
 
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. More...
 

Detailed Description

The internal version of what plugins know as MYSQL_PLUGIN_VIO, basically the context of the authentication session.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

when plugin returns a failure this tells us what really happened

Enumerator
SUCCESS 
FAILURE 
RESTART 

Member Function Documentation

◆ can_authenticate()

bool MPVIO_EXT::can_authenticate ( )

Member Data Documentation

◆ acl_user

const ACL_USER* MPVIO_EXT::acl_user

◆ acl_user_plugin

LEX_CSTRING MPVIO_EXT::acl_user_plugin

◆ auth_info

MYSQL_SERVER_AUTH_INFO MPVIO_EXT::auth_info

◆ cached_client_reply

struct { ... } MPVIO_EXT::cached_client_reply

when restarting a plugin this caches the last client reply

◆ cached_server_packet

struct { ... } MPVIO_EXT::cached_server_packet

this caches the first plugin packet for restart request on the client

◆ charset_adapter

Thd_charset_adapter* MPVIO_EXT::charset_adapter

◆ db

LEX_STRING MPVIO_EXT::db

db name from the handshake packet

◆ host

const char* MPVIO_EXT::host

◆ ip

const char* MPVIO_EXT::ip

◆ max_client_packet_length

ulong MPVIO_EXT::max_client_packet_length

◆ mem_root

MEM_ROOT* MPVIO_EXT::mem_root

◆ packets_read

int MPVIO_EXT::packets_read

◆ packets_written

int MPVIO_EXT::packets_written

counters for send/received packets

◆ pkt [1/2]

const char * MPVIO_EXT::pkt

pointers into NET::buff

◆ pkt [2/2]

char* MPVIO_EXT::pkt

◆ pkt_len

uint MPVIO_EXT::pkt_len

◆ plugin [1/2]

plugin_ref MPVIO_EXT::plugin

what plugin we're under

◆ plugin [2/2]

const char* MPVIO_EXT::plugin

◆ protocol

Protocol_classic* MPVIO_EXT::protocol

◆ rand

struct rand_struct* MPVIO_EXT::rand

◆ restrictions

Restrictions* MPVIO_EXT::restrictions

◆ scramble

char* MPVIO_EXT::scramble

◆ server_status

uint* MPVIO_EXT::server_status

◆ status

enum { ... } MPVIO_EXT::status

when plugin returns a failure this tells us what really happened

◆ thread_id

my_thread_id MPVIO_EXT::thread_id

◆ vio_is_encrypted

int MPVIO_EXT::vio_is_encrypted

The documentation for this struct was generated from the following files: