37#ifndef MYSQL_ABI_CHECK
49#ifndef my_socket_defined
54#ifndef MYSQL_ABI_CHECK
58#define SYSTEM_CHARSET_MBMAXLEN 3
59#define FILENAME_CHARSET_MBMAXLEN 5
60#define NAME_CHAR_LEN 64
61#define PARTITION_EXPR_CHAR_LEN \
64#define USERNAME_CHAR_LENGTH 32
65#define USERNAME_CHAR_LENGTH_STR "32"
67#define NAME_LEN (NAME_CHAR_LEN * SYSTEM_CHARSET_MBMAXLEN)
69#define USERNAME_LENGTH (USERNAME_CHAR_LENGTH * SYSTEM_CHARSET_MBMAXLEN)
70#define CONNECT_STRING_MAXLEN 1024
72#define MYSQL_AUTODETECT_CHARSET_NAME "auto"
74#define SERVER_VERSION_LENGTH 60
75#define SQLSTATE_LENGTH 5
81#define RELYING_PARTY_ID_LENGTH 255
84#define CHALLENGE_LENGTH 32
87#define MAX_AUTH_FACTORS 3
93#define TABLE_COMMENT_INLINE_MAXLEN 180
94#define TABLE_COMMENT_MAXLEN 2048
95#define COLUMN_COMMENT_MAXLEN 1024
96#define INDEX_COMMENT_MAXLEN 1024
97#define TABLE_PARTITION_COMMENT_MAXLEN 1024
98#define TABLESPACE_COMMENT_MAXLEN 2048
108#define MAX_PACKET_LENGTH (256L * 256L * 256L - 1)
110#define LOCAL_HOST "localhost"
111#define LOCAL_HOST_NAMEDPIPE "."
114#define MYSQL_NAMEDPIPE "MySQL"
115#define MYSQL_SERVICENAME "MySQL"
119#define FRM_GCOL_HEADER_SIZE 4
123#define GENERATED_COLUMN_EXPRESSION_MAXLEN 65535 - FRM_GCOL_HEADER_SIZE
128#define SCRAMBLE_LENGTH 20
129#define AUTH_PLUGIN_DATA_PART_1_LENGTH 8
131#define SCRAMBLED_PASSWORD_CHAR_LENGTH (SCRAMBLE_LENGTH * 2 + 1)
154#define NOT_NULL_FLAG 1
155#define PRI_KEY_FLAG 2
156#define UNIQUE_KEY_FLAG 4
157#define MULTIPLE_KEY_FLAG 8
159#define UNSIGNED_FLAG 32
160#define ZEROFILL_FLAG 64
161#define BINARY_FLAG 128
165#define AUTO_INCREMENT_FLAG 512
166#define TIMESTAMP_FLAG 1024
168#define NO_DEFAULT_VALUE_FLAG 4096
169#define ON_UPDATE_NOW_FLAG 8192
170#define PART_KEY_FLAG 16384
171#define NUM_FLAG 32768
172#define UNIQUE_FLAG 65536
173#define BINCMP_FLAG 131072
174#define GET_FIXED_FIELDS_FLAG \
177#define FIELD_IN_PART_FUNC_FLAG (1 << 19)
182#define FIELD_IN_ADD_INDEX (1 << 20)
183#define FIELD_IS_RENAMED (1 << 21)
184#define FIELD_FLAGS_STORAGE_MEDIA 22
185#define FIELD_FLAGS_STORAGE_MEDIA_MASK (3 << FIELD_FLAGS_STORAGE_MEDIA)
186#define FIELD_FLAGS_COLUMN_FORMAT 24
187#define FIELD_FLAGS_COLUMN_FORMAT_MASK (3 << FIELD_FLAGS_COLUMN_FORMAT)
188#define FIELD_IS_DROPPED (1 << 26)
189#define EXPLICIT_NULL_FLAG \
197#define NOT_SECONDARY_FLAG (1 << 29)
199#define FIELD_IS_INVISIBLE (1 << 30)
219#define REFRESH_GRANT 1
221#define REFRESH_TABLES 4
225#define REFRESH_STATUS 16
227#define REFRESH_REPLICA \
231#define REFRESH_SOURCE \
237#define REFRESH_ERROR_LOG 256
238#define REFRESH_ENGINE_LOG 512
239#define REFRESH_BINARY_LOG 1024
240#define REFRESH_RELAY_LOG 2048
241#define REFRESH_GENERAL_LOG 4096
242#define REFRESH_SLOW_LOG 8192
243#define REFRESH_READ_LOCK 16384
249#define REFRESH_FAST 32768
250#define REFRESH_USER_RESOURCES \
253#define REFRESH_FOR_EXPORT 0x100000L
254#define REFRESH_OPTIMIZER_COSTS 0x200000L
255#define REFRESH_PERSIST 0x400000L
287#define CLIENT_LONG_PASSWORD 1
292#define CLIENT_FOUND_ROWS 2
310#define CLIENT_LONG_FLAG 4
329#define CLIENT_CONNECT_WITH_DB 8
330#define CLIENT_NO_SCHEMA \
347#define CLIENT_COMPRESS 32
353#define CLIENT_ODBC 64
367#define CLIENT_LOCAL_FILES 128
381#define CLIENT_IGNORE_SPACE 256
399#define CLIENT_PROTOCOL_41 512
418#define CLIENT_INTERACTIVE 1024
434#define CLIENT_SSL 2048
445#define CLIENT_IGNORE_SIGPIPE 4096
465#define CLIENT_TRANSACTIONS 8192
466#define CLIENT_RESERVED 16384
467#define CLIENT_RESERVED2 \
494#define CLIENT_MULTI_STATEMENTS (1UL << 16)
517#define CLIENT_MULTI_RESULTS (1UL << 17)
540#define CLIENT_PS_MULTI_RESULTS (1UL << 18)
567#define CLIENT_PLUGIN_AUTH (1UL << 19)
585#define CLIENT_CONNECT_ATTRS (1UL << 20)
617#define CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA (1UL << 21)
637#define CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS (1UL << 22)
659#define CLIENT_SESSION_TRACK (1UL << 23)
693#define CLIENT_DEPRECATE_EOF (1UL << 24)
698#define CLIENT_OPTIONAL_RESULTSET_METADATA (1UL << 25)
717#define CLIENT_ZSTD_COMPRESSION_ALGORITHM (1UL << 26)
735#define CLIENT_QUERY_ATTRIBUTES (1UL << 27)
750#define MULTI_FACTOR_AUTHENTICATION (1UL << 28)
756#define CLIENT_CAPABILITY_EXTENSION (1UL << 29)
765#define CLIENT_SSL_VERIFY_SERVER_CERT (1UL << 30)
776#define CLIENT_REMEMBER_OPTIONS (1UL << 31)
780#define CAN_CLIENT_COMPRESS CLIENT_COMPRESS
783#define CLIENT_ALL_FLAGS \
784 (CLIENT_LONG_PASSWORD | CLIENT_FOUND_ROWS | CLIENT_LONG_FLAG | \
785 CLIENT_CONNECT_WITH_DB | CLIENT_NO_SCHEMA | CLIENT_COMPRESS | CLIENT_ODBC | \
786 CLIENT_LOCAL_FILES | CLIENT_IGNORE_SPACE | CLIENT_PROTOCOL_41 | \
787 CLIENT_INTERACTIVE | CLIENT_SSL | CLIENT_IGNORE_SIGPIPE | \
788 CLIENT_TRANSACTIONS | CLIENT_RESERVED | CLIENT_RESERVED2 | \
789 CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS | CLIENT_PS_MULTI_RESULTS | \
790 CLIENT_SSL_VERIFY_SERVER_CERT | CLIENT_REMEMBER_OPTIONS | \
791 CLIENT_PLUGIN_AUTH | CLIENT_CONNECT_ATTRS | \
792 CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA | \
793 CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS | CLIENT_SESSION_TRACK | \
794 CLIENT_DEPRECATE_EOF | CLIENT_OPTIONAL_RESULTSET_METADATA | \
795 CLIENT_ZSTD_COMPRESSION_ALGORITHM | CLIENT_QUERY_ATTRIBUTES | \
796 MULTI_FACTOR_AUTHENTICATION)
804#define CLIENT_BASIC_FLAGS \
805 (CLIENT_ALL_FLAGS & \
806 ~(CLIENT_SSL | CLIENT_COMPRESS | CLIENT_SSL_VERIFY_SERVER_CERT | \
807 CLIENT_ZSTD_COMPRESSION_ALGORITHM))
875#define SERVER_STATUS_CLEAR_SET \
876 (SERVER_QUERY_NO_GOOD_INDEX_USED | SERVER_QUERY_NO_INDEX_USED | \
877 SERVER_MORE_RESULTS_EXISTS | SERVER_STATUS_METADATA_CHANGED | \
878 SERVER_QUERY_WAS_SLOW | SERVER_STATUS_DB_DROPPED | \
879 SERVER_STATUS_CURSOR_EXISTS | SERVER_STATUS_LAST_ROW_SENT | \
880 SERVER_SESSION_STATE_CHANGED)
883#define MYSQL_ERRMSG_SIZE 512
884#define NET_READ_TIMEOUT 30
885#define NET_WRITE_TIMEOUT 60
886#define NET_WAIT_TIMEOUT 8 * 60 * 60
893#define ONLY_KILL_QUERY 1
897#define MYSQL_VIO struct Vio *
900#define MAX_TINYINT_WIDTH 3
901#define MAX_SMALLINT_WIDTH 5
902#define MAX_MEDIUMINT_WIDTH 8
903#define MAX_INT_WIDTH 10
904#define MAX_BIGINT_WIDTH 20
906#define MAX_CHAR_WIDTH 255
908#define MAX_BLOB_WIDTH 16777216
910#define NET_ERROR_UNSET 0
911#define NET_ERROR_SOCKET_RECOVERABLE 1
912#define NET_ERROR_SOCKET_UNUSABLE 2
913#define NET_ERROR_SOCKET_NOT_READABLE 3
914#define NET_ERROR_SOCKET_NOT_WRITABLE 4
951#define packet_error (~(unsigned long)0)
958#define CLIENT_MULTI_QUERIES CLIENT_MULTI_STATEMENTS
959#define FIELD_TYPE_DECIMAL MYSQL_TYPE_DECIMAL
960#define FIELD_TYPE_NEWDECIMAL MYSQL_TYPE_NEWDECIMAL
961#define FIELD_TYPE_TINY MYSQL_TYPE_TINY
962#define FIELD_TYPE_SHORT MYSQL_TYPE_SHORT
963#define FIELD_TYPE_LONG MYSQL_TYPE_LONG
964#define FIELD_TYPE_FLOAT MYSQL_TYPE_FLOAT
965#define FIELD_TYPE_DOUBLE MYSQL_TYPE_DOUBLE
966#define FIELD_TYPE_NULL MYSQL_TYPE_NULL
967#define FIELD_TYPE_TIMESTAMP MYSQL_TYPE_TIMESTAMP
968#define FIELD_TYPE_LONGLONG MYSQL_TYPE_LONGLONG
969#define FIELD_TYPE_INT24 MYSQL_TYPE_INT24
970#define FIELD_TYPE_DATE MYSQL_TYPE_DATE
971#define FIELD_TYPE_TIME MYSQL_TYPE_TIME
972#define FIELD_TYPE_DATETIME MYSQL_TYPE_DATETIME
973#define FIELD_TYPE_YEAR MYSQL_TYPE_YEAR
974#define FIELD_TYPE_NEWDATE MYSQL_TYPE_NEWDATE
975#define FIELD_TYPE_ENUM MYSQL_TYPE_ENUM
976#define FIELD_TYPE_SET MYSQL_TYPE_SET
977#define FIELD_TYPE_TINY_BLOB MYSQL_TYPE_TINY_BLOB
978#define FIELD_TYPE_MEDIUM_BLOB MYSQL_TYPE_MEDIUM_BLOB
979#define FIELD_TYPE_LONG_BLOB MYSQL_TYPE_LONG_BLOB
980#define FIELD_TYPE_BLOB MYSQL_TYPE_BLOB
981#define FIELD_TYPE_VAR_STRING MYSQL_TYPE_VAR_STRING
982#define FIELD_TYPE_STRING MYSQL_TYPE_STRING
983#define FIELD_TYPE_CHAR MYSQL_TYPE_TINY
984#define FIELD_TYPE_INTERVAL MYSQL_TYPE_ENUM
985#define FIELD_TYPE_GEOMETRY MYSQL_TYPE_GEOMETRY
986#define FIELD_TYPE_BIT MYSQL_TYPE_BIT
996#define MYSQL_SHUTDOWN_KILLABLE_CONNECT (unsigned char)(1 << 0)
997#define MYSQL_SHUTDOWN_KILLABLE_TRANS (unsigned char)(1 << 1)
998#define MYSQL_SHUTDOWN_KILLABLE_LOCK_TABLE (unsigned char)(1 << 2)
999#define MYSQL_SHUTDOWN_KILLABLE_UPDATE (unsigned char)(1 << 3)
1033#if defined(__clang__)
1036#pragma clang diagnostic push
1037#pragma clang diagnostic ignored "-Wdocumentation"
1043#if defined(__clang__)
1044#pragma clang diagnostic pop
1082#define SESSION_TRACK_BEGIN SESSION_TRACK_SYSTEM_VARIABLES
1085#define SESSION_TRACK_END SESSION_TRACK_TRANSACTION_STATE
1088#define IS_SESSION_STATE_TYPE(T) \
1089 (((int)(T) >= SESSION_TRACK_BEGIN) && ((T) <= SESSION_TRACK_END))
1091#define net_new_transaction(net) ((net)->pkt_nr = 0)
1102 const unsigned char *header,
size_t head_len,
1103 const unsigned char *packet,
size_t len);
1124#define NET_HEADER_SIZE 4
1125#define COMP_HEADER_SIZE 3
1131char *
octet2hex(
char *to,
const char *
str,
unsigned int len);
1136 const char *src,
size_t src_size,
const char *
rnd,
1158 unsigned long max_length);
1166#define NULL_LENGTH ((unsigned long)~0)
1167#define MYSQL_STMT_HEADER 4
1168#define MYSQL_LONG_DATA_HEADER 6
mysql_enum_shutdown_level
We want levels to be in growing order of hardness (because we use number comparisons).
Definition: mysql_com.h:1006
#define MYSQL_SHUTDOWN_KILLABLE_CONNECT
Definition: mysql_com.h:995
#define MYSQL_SHUTDOWN_KILLABLE_UPDATE
Definition: mysql_com.h:998
#define MYSQL_SHUTDOWN_KILLABLE_TRANS
Definition: mysql_com.h:996
@ SHUTDOWN_WAIT_CRITICAL_BUFFERS
Don't flush InnoDB buffers, flush other storage engines' buffers.
Definition: mysql_com.h:1017
@ SHUTDOWN_WAIT_ALL_BUFFERS
Flush InnoDB buffers and other storage engines' buffers.
Definition: mysql_com.h:1015
@ SHUTDOWN_WAIT_CONNECTIONS
Wait for existing connections to finish.
Definition: mysql_com.h:1009
@ SHUTDOWN_WAIT_TRANSACTIONS
Wait for existing transactons to finish.
Definition: mysql_com.h:1011
@ KILL_QUERY
Query level of the KILL command.
Definition: mysql_com.h:1019
@ SHUTDOWN_WAIT_UPDATES
Wait for existing updates to finish (=> no partial MyISAM update)
Definition: mysql_com.h:1013
@ KILL_CONNECTION
Connection level of the KILL command.
Definition: mysql_com.h:1021
@ SHUTDOWN_DEFAULT
Definition: mysql_com.h:1007
static int rnd(int max_value)
Definition: hp_test2.cc:551
#define STDCALL
Definition: my_compiler.h:137
Common #defines and includes for file and socket I/O.
Types to make file and socket I/O compatible.
unsigned int STDCALL mysql_errno(MYSQL *mysql)
Definition: client.cc:9194
int my_socket
Definition: mysql.h:65
unsigned char * net_store_length(unsigned char *pkg, unsigned long long length)
enum_session_state_type
Type of state change information that the server can include in the Ok packet.
Definition: mysql_com.h:1071
@ SESSION_TRACK_GTIDS
See also: session_track_gtids.
Definition: mysql_com.h:1075
@ SESSION_TRACK_SCHEMA
Current schema.
Definition: mysql_com.h:1073
@ SESSION_TRACK_TRANSACTION_CHARACTERISTICS
Transaction chistics.
Definition: mysql_com.h:1076
@ SESSION_TRACK_TRANSACTION_STATE
Transaction state.
Definition: mysql_com.h:1077
@ SESSION_TRACK_STATE_CHANGE
track session state changes
Definition: mysql_com.h:1074
@ SESSION_TRACK_SYSTEM_VARIABLES
Session system variables.
Definition: mysql_com.h:1072
SERVER_STATUS_flags_enum
The status flags are a bit-field.
Definition: mysql_com.h:809
@ SERVER_STATUS_LAST_ROW_SENT
This flag is sent when a read-only cursor is exhausted, in reply to COM_STMT_FETCH command.
Definition: mysql_com.h:835
@ SERVER_QUERY_WAS_SLOW
Definition: mysql_com.h:844
@ SERVER_STATUS_IN_TRANS
Is raised when a multi-statement transaction has been started, either explicitly, by means of BEGIN o...
Definition: mysql_com.h:817
@ SERVER_STATUS_NO_BACKSLASH_ESCAPES
Definition: mysql_com.h:837
@ SERVER_STATUS_DB_DROPPED
A database was dropped.
Definition: mysql_com.h:836
@ SERVER_STATUS_CURSOR_EXISTS
The server was able to fulfill the clients request and opened a read-only non-scrollable cursor for a...
Definition: mysql_com.h:830
@ SERVER_STATUS_AUTOCOMMIT
Server in auto_commit mode.
Definition: mysql_com.h:818
@ SERVER_SESSION_STATE_CHANGED
This status flag, when on, implies that one of the state information has changed on the server becaus...
Definition: mysql_com.h:863
@ SERVER_QUERY_NO_GOOD_INDEX_USED
Definition: mysql_com.h:820
@ SERVER_STATUS_IN_TRANS_READONLY
Set at the same time as SERVER_STATUS_IN_TRANS if the started multi-statement transaction is a read-o...
Definition: mysql_com.h:857
@ SERVER_QUERY_NO_INDEX_USED
Definition: mysql_com.h:821
@ SERVER_MORE_RESULTS_EXISTS
Multi query - next query exists.
Definition: mysql_com.h:819
@ SERVER_STATUS_METADATA_CHANGED
Sent to the client if after a prepared statement reprepare we discovered that the new statement retur...
Definition: mysql_com.h:843
@ SERVER_PS_OUT_PARAMS
To mark ResultSet containing output parameter values.
Definition: mysql_com.h:848
connect_stage
Describes the current state of Asynchronous connection phase state machine.
Definition: mysql_com.h:1253
@ CONNECT_STAGE_COMPLETE
Connected or no async connect in progress.
Definition: mysql_com.h:1303
@ CONNECT_STAGE_AUTH_INIT_MULTI_AUTH
Start multi factor authentication.
Definition: mysql_com.h:1286
@ CONNECT_STAGE_AUTH_HANDLE_FIRST_AUTHENTICATE_USER
handle the result of the first auth plugin run
Definition: mysql_com.h:1277
@ CONNECT_STAGE_NET_COMPLETE_CONNECT
init the local data structures post connect
Definition: mysql_com.h:1263
@ CONNECT_STAGE_AUTHENTICATE
authentication phase
Definition: mysql_com.h:1271
@ CONNECT_STAGE_SEND_ONE_INIT_COMMAND
Send an init command.
Definition: mysql_com.h:1301
@ CONNECT_STAGE_NET_WAIT_CONNECT
wait for connection to be established
Definition: mysql_com.h:1261
@ CONNECT_STAGE_PREP_SELECT_DATABASE
Authenticated, set initial database if specified.
Definition: mysql_com.h:1296
@ CONNECT_STAGE_AUTH_RUN_SECOND_AUTHENTICATE_USER
Start the authentication process again with the plugin which server asked for.
Definition: mysql_com.h:1284
@ CONNECT_STAGE_PARSE_HANDSHAKE
parse the first packet
Definition: mysql_com.h:1267
@ CONNECT_STAGE_AUTH_HANDLE_SECOND_AUTHENTICATE_USER
Now read the results of the second plugin run.
Definition: mysql_com.h:1290
@ CONNECT_STAGE_PREP_INIT_COMMANDS
Prepare to send a sequence of init commands.
Definition: mysql_com.h:1298
@ CONNECT_STAGE_AUTH_RUN_FIRST_AUTHENTICATE_USER
run first auth plugin
Definition: mysql_com.h:1275
@ CONNECT_STAGE_AUTH_DO_MULTI_PLUGIN_AUTH
Invoke client plugins multi-auth authentication method.
Definition: mysql_com.h:1292
@ CONNECT_STAGE_AUTH_HANDLE_CHANGE_USER_REQUEST
Check if server asked to use a different authentication plugin.
Definition: mysql_com.h:1281
@ CONNECT_STAGE_AUTH_HANDLE_MULTI_AUTH_RESPONSE
Handle response from client plugins authentication method.
Definition: mysql_com.h:1294
@ CONNECT_STAGE_AUTH_FINISH_AUTH
Final cleanup.
Definition: mysql_com.h:1288
@ CONNECT_STAGE_NOT_STARTED
not connected
Definition: mysql_com.h:1257
@ CONNECT_STAGE_ESTABLISH_SSL
tls establishment
Definition: mysql_com.h:1269
@ CONNECT_STAGE_NET_BEGIN_CONNECT
begin connection to the server
Definition: mysql_com.h:1259
@ CONNECT_STAGE_AUTH_BEGIN
determine the plugin to use
Definition: mysql_com.h:1273
@ CONNECT_STAGE_READ_GREETING
read the first packet
Definition: mysql_com.h:1265
@ CONNECT_STAGE_INVALID
MYSQL not valid or an unknown state.
Definition: mysql_com.h:1255
@ CONNECT_STAGE_AUTH_READ_CHANGE_USER_RESULT
read the implied changed user auth, if any
Definition: mysql_com.h:1279
bool my_net_init(struct NET *net, MYSQL_VIO vio)
bool net_write_command(struct NET *net, unsigned char command, const unsigned char *header, size_t head_len, const unsigned char *packet, size_t len)
Send a command to the server.
Definition: net_serv.cc:879
void my_net_set_read_timeout(struct NET *net, unsigned int timeout)
void my_net_set_write_timeout(struct NET *net, unsigned int timeout)
bool my_thread_init(void)
Allocate thread specific memory for the thread, used by mysys and dbug.
Definition: my_thr_init.cc:263
enum_cursor_type
The flags used in COM_STMT_EXECUTE.
Definition: mysql_com.h:1045
@ CURSOR_TYPE_NO_CURSOR
Definition: mysql_com.h:1046
@ CURSOR_TYPE_FOR_UPDATE
Definition: mysql_com.h:1048
@ CURSOR_TYPE_SCROLLABLE
Definition: mysql_com.h:1049
@ CURSOR_TYPE_READ_ONLY
Definition: mysql_com.h:1047
@ PARAMETER_COUNT_AVAILABLE
On when the client will send the parameter count even for 0 parameters.
Definition: mysql_com.h:1054
#define MYSQL_ERRMSG_SIZE
Max length of a error message.
Definition: mysql_com.h:882
char * get_tty_password(const char *opt_message)
Definition: get_password.cc:146
unsigned long my_net_read(struct NET *net)
Read a packet from the client/server and return it without the internal package header.
Definition: net_serv.cc:2285
#define MYSQL_VIO
Definition: mysql_com.h:896
enum_mysql_set_option
options for mysql_options()
Definition: mysql_com.h:1058
@ MYSQL_OPTION_MULTI_STATEMENTS_OFF
Definition: mysql_com.h:1060
@ MYSQL_OPTION_MULTI_STATEMENTS_ON
Definition: mysql_com.h:1059
void my_thread_end(void)
Deallocate memory used by the thread for book-keeping.
Definition: my_thr_init.cc:312
void my_net_set_retry_count(struct NET *net, unsigned int retry_count)
unsigned int net_field_length_size(const unsigned char *pos)
length of buffer required to represent a length-encoded string give the length part of length encoded...
Definition: pack.cc:178
void net_clear(struct NET *net, bool check_buffer)
Clear (reinitialize) the NET structure for a new command.
Definition: net_serv.cc:271
#define SQLSTATE_LENGTH
Definition: mysql_com.h:75
uint64_t net_length_size_including_self(uint64_t length_without_self)
Calculates length of the field in case value of this field includes length of this field (self)
Definition: pack.cc:193
unsigned int net_length_size(unsigned long long num)
bool generate_sha256_scramble(unsigned char *dst, size_t dst_size, const char *src, size_t src_size, const char *rnd, size_t rnd_size)
Definition: sha2_password_common.cc:388
bool net_write_packet(struct NET *net, const unsigned char *packet, size_t length)
Write a MySQL protocol packet to the network handler.
Definition: net_serv.cc:1303
const char * mysql_errno_to_sqlstate(unsigned int mysql_errno)
bool net_realloc(struct NET *net, size_t length)
Realloc the packet buffer.
Definition: net_serv.cc:217
bool my_net_write(struct NET *net, const unsigned char *packet, size_t len)
Write a logical packet with packet header.
Definition: net_serv.cc:443
void net_end(struct NET *net)
Definition: net_serv.cc:198
enum_resultset_metadata
Definition: mysql_com.h:1025
@ RESULTSET_METADATA_NONE
No metadata will be sent.
Definition: mysql_com.h:1027
@ RESULTSET_METADATA_FULL
The server will send all metadata.
Definition: mysql_com.h:1029
char * octet2hex(char *to, const char *str, unsigned int len)
void my_net_local_init(struct NET *net)
Definition: libmysql.cc:972
bool net_flush(struct NET *net)
Flush write_buffer if not empty.
Definition: net_serv.cc:292
uint64_t net_field_length_ll(unsigned char **packet)
Definition: pack.cc:90
void net_claim_memory_ownership(struct NET *net, bool claim)
Definition: net_serv.cc:211
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1117
bool length(const dd::Spatial_reference_system *srs, const Geometry *g1, double *length, bool *null) noexcept
Computes the length of linestrings and multilinestrings.
Definition: length.cc:76
static bool timeout(bool(*wait_condition)())
Timeout function.
Definition: log0meb.cc:498
ulong STDCALL net_field_length(uchar **packet)
Definition: pack.cc:38
ulong STDCALL net_field_length_checked(uchar **packet, ulong max_length)
Definition: pack.cc:61
Definition: mysql_com.h:915
unsigned int pkt_nr
Definition: mysql_com.h:926
char sqlstate[SQLSTATE_LENGTH+1]
Client library sqlstate buffer.
Definition: mysql_com.h:938
MYSQL_VIO vio
Definition: mysql_com.h:916
unsigned char error
Definition: mysql_com.h:934
unsigned char * read_pos
Definition: mysql_com.h:917
unsigned char reading_or_writing
Definition: mysql_com.h:930
unsigned int retry_count
Definition: mysql_com.h:927
bool compress
Definition: mysql_com.h:932
unsigned int * return_status
Definition: mysql_com.h:929
unsigned long length
Definition: mysql_com.h:924
unsigned long max_packet_size
Definition: mysql_com.h:925
unsigned long where_b
Definition: mysql_com.h:924
unsigned long max_packet
Definition: mysql_com.h:925
void * extension
Extension pointer, for the caller private use.
Definition: mysql_com.h:947
unsigned char save_char
Definition: mysql_com.h:931
unsigned int last_errno
Definition: mysql_com.h:933
unsigned char * buff
Definition: mysql_com.h:917
int fcntl
Definition: mysql_com.h:928
my_socket fd
Definition: mysql_com.h:918
unsigned char * write_pos
Definition: mysql_com.h:917
unsigned long remain_in_buf
Set if we are doing several queries in one command ( as in LOAD TABLE ... FROM MASTER ),...
Definition: mysql_com.h:924
char last_error[MYSQL_ERRMSG_SIZE]
Client library error message buffer.
Definition: mysql_com.h:936
unsigned int compress_pkt_nr
Definition: mysql_com.h:926
unsigned int read_timeout
Definition: mysql_com.h:927
unsigned char * buff_end
Definition: mysql_com.h:917
unsigned int write_timeout
Definition: mysql_com.h:927
unsigned long buf_length
Definition: mysql_com.h:924
Definition: violite.h:320
Definition: mysql_com.h:1110
unsigned long seed2
Definition: mysql_com.h:1111
unsigned long max_value
Definition: mysql_com.h:1111
double max_value_dbl
Definition: mysql_com.h:1112
unsigned long seed1
Definition: mysql_com.h:1111
command
Definition: version_token.cc:284