36#ifndef MYSQL_ABI_CHECK
48#ifndef my_socket_defined
53#ifndef MYSQL_ABI_CHECK
57#define SYSTEM_CHARSET_MBMAXLEN 3
58#define FILENAME_CHARSET_MBMAXLEN 5
59#define NAME_CHAR_LEN 64
60#define PARTITION_EXPR_CHAR_LEN \
63#define USERNAME_CHAR_LENGTH 32
64#define USERNAME_CHAR_LENGTH_STR "32"
66#define NAME_LEN (NAME_CHAR_LEN * SYSTEM_CHARSET_MBMAXLEN)
68#define USERNAME_LENGTH (USERNAME_CHAR_LENGTH * SYSTEM_CHARSET_MBMAXLEN)
69#define CONNECT_STRING_MAXLEN 1024
71#define MYSQL_AUTODETECT_CHARSET_NAME "auto"
73#define SERVER_VERSION_LENGTH 60
74#define SQLSTATE_LENGTH 5
80#define RELYING_PARTY_ID_LENGTH 255
83#define CHALLENGE_LENGTH 32
86#define MAX_AUTH_FACTORS 3
92#define TABLE_COMMENT_INLINE_MAXLEN 180
93#define TABLE_COMMENT_MAXLEN 2048
94#define COLUMN_COMMENT_MAXLEN 1024
95#define INDEX_COMMENT_MAXLEN 1024
96#define TABLE_PARTITION_COMMENT_MAXLEN 1024
97#define TABLESPACE_COMMENT_MAXLEN 2048
107#define MAX_PACKET_LENGTH (256L * 256L * 256L - 1)
109#define LOCAL_HOST "localhost"
110#define LOCAL_HOST_NAMEDPIPE "."
113#define MYSQL_NAMEDPIPE "MySQL"
114#define MYSQL_SERVICENAME "MySQL"
118#define FRM_GCOL_HEADER_SIZE 4
122#define GENERATED_COLUMN_EXPRESSION_MAXLEN 65535 - FRM_GCOL_HEADER_SIZE
127#define SCRAMBLE_LENGTH 20
128#define AUTH_PLUGIN_DATA_PART_1_LENGTH 8
130#define SCRAMBLED_PASSWORD_CHAR_LENGTH (SCRAMBLE_LENGTH * 2 + 1)
153#define NOT_NULL_FLAG 1
154#define PRI_KEY_FLAG 2
155#define UNIQUE_KEY_FLAG 4
156#define MULTIPLE_KEY_FLAG 8
158#define UNSIGNED_FLAG 32
159#define ZEROFILL_FLAG 64
160#define BINARY_FLAG 128
164#define AUTO_INCREMENT_FLAG 512
165#define TIMESTAMP_FLAG 1024
167#define NO_DEFAULT_VALUE_FLAG 4096
168#define ON_UPDATE_NOW_FLAG 8192
169#define NUM_FLAG 32768
170#define PART_KEY_FLAG 16384
171#define GROUP_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 \
195#define NOT_SECONDARY_FLAG (1 << 29)
197#define FIELD_IS_INVISIBLE (1 << 30)
217#define REFRESH_GRANT 1
219#define REFRESH_TABLES 4
220#define REFRESH_HOSTS 8
221#define REFRESH_STATUS 16
222#define REFRESH_THREADS 32
223#define REFRESH_REPLICA \
226#define REFRESH_SLAVE \
231#define REFRESH_MASTER \
234#define REFRESH_ERROR_LOG 256
235#define REFRESH_ENGINE_LOG 512
236#define REFRESH_BINARY_LOG 1024
237#define REFRESH_RELAY_LOG 2048
238#define REFRESH_GENERAL_LOG 4096
239#define REFRESH_SLOW_LOG 8192
240#define REFRESH_READ_LOCK 16384
246#define REFRESH_FAST 32768
247#define REFRESH_USER_RESOURCES \
250#define REFRESH_FOR_EXPORT 0x100000L
251#define REFRESH_OPTIMIZER_COSTS 0x200000L
252#define REFRESH_PERSIST 0x400000L
284#define CLIENT_LONG_PASSWORD 1
289#define CLIENT_FOUND_ROWS 2
307#define CLIENT_LONG_FLAG 4
326#define CLIENT_CONNECT_WITH_DB 8
327#define CLIENT_NO_SCHEMA \
344#define CLIENT_COMPRESS 32
350#define CLIENT_ODBC 64
364#define CLIENT_LOCAL_FILES 128
378#define CLIENT_IGNORE_SPACE 256
396#define CLIENT_PROTOCOL_41 512
415#define CLIENT_INTERACTIVE 1024
431#define CLIENT_SSL 2048
442#define CLIENT_IGNORE_SIGPIPE 4096
462#define CLIENT_TRANSACTIONS 8192
463#define CLIENT_RESERVED 16384
464#define CLIENT_RESERVED2 \
491#define CLIENT_MULTI_STATEMENTS (1UL << 16)
514#define CLIENT_MULTI_RESULTS (1UL << 17)
537#define CLIENT_PS_MULTI_RESULTS (1UL << 18)
564#define CLIENT_PLUGIN_AUTH (1UL << 19)
582#define CLIENT_CONNECT_ATTRS (1UL << 20)
614#define CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA (1UL << 21)
634#define CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS (1UL << 22)
656#define CLIENT_SESSION_TRACK (1UL << 23)
690#define CLIENT_DEPRECATE_EOF (1UL << 24)
695#define CLIENT_OPTIONAL_RESULTSET_METADATA (1UL << 25)
714#define CLIENT_ZSTD_COMPRESSION_ALGORITHM (1UL << 26)
732#define CLIENT_QUERY_ATTRIBUTES (1UL << 27)
747#define MULTI_FACTOR_AUTHENTICATION (1UL << 28)
753#define CLIENT_CAPABILITY_EXTENSION (1UL << 29)
762#define CLIENT_SSL_VERIFY_SERVER_CERT (1UL << 30)
773#define CLIENT_REMEMBER_OPTIONS (1UL << 31)
777#define CAN_CLIENT_COMPRESS CLIENT_COMPRESS
780#define CLIENT_ALL_FLAGS \
781 (CLIENT_LONG_PASSWORD | CLIENT_FOUND_ROWS | CLIENT_LONG_FLAG | \
782 CLIENT_CONNECT_WITH_DB | CLIENT_NO_SCHEMA | CLIENT_COMPRESS | CLIENT_ODBC | \
783 CLIENT_LOCAL_FILES | CLIENT_IGNORE_SPACE | CLIENT_PROTOCOL_41 | \
784 CLIENT_INTERACTIVE | CLIENT_SSL | CLIENT_IGNORE_SIGPIPE | \
785 CLIENT_TRANSACTIONS | CLIENT_RESERVED | CLIENT_RESERVED2 | \
786 CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS | CLIENT_PS_MULTI_RESULTS | \
787 CLIENT_SSL_VERIFY_SERVER_CERT | CLIENT_REMEMBER_OPTIONS | \
788 CLIENT_PLUGIN_AUTH | CLIENT_CONNECT_ATTRS | \
789 CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA | \
790 CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS | CLIENT_SESSION_TRACK | \
791 CLIENT_DEPRECATE_EOF | CLIENT_OPTIONAL_RESULTSET_METADATA | \
792 CLIENT_ZSTD_COMPRESSION_ALGORITHM | CLIENT_QUERY_ATTRIBUTES | \
793 MULTI_FACTOR_AUTHENTICATION)
801#define CLIENT_BASIC_FLAGS \
802 (CLIENT_ALL_FLAGS & \
803 ~(CLIENT_SSL | CLIENT_COMPRESS | CLIENT_SSL_VERIFY_SERVER_CERT | \
804 CLIENT_ZSTD_COMPRESSION_ALGORITHM))
872#define SERVER_STATUS_CLEAR_SET \
873 (SERVER_QUERY_NO_GOOD_INDEX_USED | SERVER_QUERY_NO_INDEX_USED | \
874 SERVER_MORE_RESULTS_EXISTS | SERVER_STATUS_METADATA_CHANGED | \
875 SERVER_QUERY_WAS_SLOW | SERVER_STATUS_DB_DROPPED | \
876 SERVER_STATUS_CURSOR_EXISTS | SERVER_STATUS_LAST_ROW_SENT | \
877 SERVER_SESSION_STATE_CHANGED)
880#define MYSQL_ERRMSG_SIZE 512
881#define NET_READ_TIMEOUT 30
882#define NET_WRITE_TIMEOUT 60
883#define NET_WAIT_TIMEOUT 8 * 60 * 60
890#define ONLY_KILL_QUERY 1
894#define MYSQL_VIO struct Vio *
897#define MAX_TINYINT_WIDTH 3
898#define MAX_SMALLINT_WIDTH 5
899#define MAX_MEDIUMINT_WIDTH 8
900#define MAX_INT_WIDTH 10
901#define MAX_BIGINT_WIDTH 20
903#define MAX_CHAR_WIDTH 255
905#define MAX_BLOB_WIDTH 16777216
907#define NET_ERROR_UNSET 0
908#define NET_ERROR_SOCKET_RECOVERABLE 1
909#define NET_ERROR_SOCKET_UNUSABLE 2
910#define NET_ERROR_SOCKET_NOT_READABLE 3
911#define NET_ERROR_SOCKET_NOT_WRITABLE 4
948#define packet_error (~(unsigned long)0)
955#define CLIENT_MULTI_QUERIES CLIENT_MULTI_STATEMENTS
956#define FIELD_TYPE_DECIMAL MYSQL_TYPE_DECIMAL
957#define FIELD_TYPE_NEWDECIMAL MYSQL_TYPE_NEWDECIMAL
958#define FIELD_TYPE_TINY MYSQL_TYPE_TINY
959#define FIELD_TYPE_SHORT MYSQL_TYPE_SHORT
960#define FIELD_TYPE_LONG MYSQL_TYPE_LONG
961#define FIELD_TYPE_FLOAT MYSQL_TYPE_FLOAT
962#define FIELD_TYPE_DOUBLE MYSQL_TYPE_DOUBLE
963#define FIELD_TYPE_NULL MYSQL_TYPE_NULL
964#define FIELD_TYPE_TIMESTAMP MYSQL_TYPE_TIMESTAMP
965#define FIELD_TYPE_LONGLONG MYSQL_TYPE_LONGLONG
966#define FIELD_TYPE_INT24 MYSQL_TYPE_INT24
967#define FIELD_TYPE_DATE MYSQL_TYPE_DATE
968#define FIELD_TYPE_TIME MYSQL_TYPE_TIME
969#define FIELD_TYPE_DATETIME MYSQL_TYPE_DATETIME
970#define FIELD_TYPE_YEAR MYSQL_TYPE_YEAR
971#define FIELD_TYPE_NEWDATE MYSQL_TYPE_NEWDATE
972#define FIELD_TYPE_ENUM MYSQL_TYPE_ENUM
973#define FIELD_TYPE_SET MYSQL_TYPE_SET
974#define FIELD_TYPE_TINY_BLOB MYSQL_TYPE_TINY_BLOB
975#define FIELD_TYPE_MEDIUM_BLOB MYSQL_TYPE_MEDIUM_BLOB
976#define FIELD_TYPE_LONG_BLOB MYSQL_TYPE_LONG_BLOB
977#define FIELD_TYPE_BLOB MYSQL_TYPE_BLOB
978#define FIELD_TYPE_VAR_STRING MYSQL_TYPE_VAR_STRING
979#define FIELD_TYPE_STRING MYSQL_TYPE_STRING
980#define FIELD_TYPE_CHAR MYSQL_TYPE_TINY
981#define FIELD_TYPE_INTERVAL MYSQL_TYPE_ENUM
982#define FIELD_TYPE_GEOMETRY MYSQL_TYPE_GEOMETRY
983#define FIELD_TYPE_BIT MYSQL_TYPE_BIT
993#define MYSQL_SHUTDOWN_KILLABLE_CONNECT (unsigned char)(1 << 0)
994#define MYSQL_SHUTDOWN_KILLABLE_TRANS (unsigned char)(1 << 1)
995#define MYSQL_SHUTDOWN_KILLABLE_LOCK_TABLE (unsigned char)(1 << 2)
996#define MYSQL_SHUTDOWN_KILLABLE_UPDATE (unsigned char)(1 << 3)
1030#if defined(__clang__)
1033#pragma clang diagnostic push
1034#pragma clang diagnostic ignored "-Wdocumentation"
1040#if defined(__clang__)
1041#pragma clang diagnostic pop
1079#define SESSION_TRACK_BEGIN SESSION_TRACK_SYSTEM_VARIABLES
1082#define SESSION_TRACK_END SESSION_TRACK_TRANSACTION_STATE
1085#define IS_SESSION_STATE_TYPE(T) \
1086 (((int)(T) >= SESSION_TRACK_BEGIN) && ((T) <= SESSION_TRACK_END))
1088#define net_new_transaction(net) ((net)->pkt_nr = 0)
1099 const unsigned char *header,
size_t head_len,
1100 const unsigned char *packet,
size_t len);
1121#define NET_HEADER_SIZE 4
1122#define COMP_HEADER_SIZE 3
1138 unsigned int password_len);
1142 unsigned long *salt);
1148bool check_scramble(
const unsigned char *reply,
const char *message,
1149 const unsigned char *hash_stage2);
1152char *
octet2hex(
char *to,
const char *
str,
unsigned int len);
1157 const char *src,
size_t src_size,
const char *
rnd,
1186 unsigned long max_length);
1193#define NULL_LENGTH ((unsigned long)~0)
1194#define MYSQL_STMT_HEADER 4
1195#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:1003
#define MYSQL_SHUTDOWN_KILLABLE_CONNECT
Definition: mysql_com.h:992
#define MYSQL_SHUTDOWN_KILLABLE_UPDATE
Definition: mysql_com.h:995
#define MYSQL_SHUTDOWN_KILLABLE_TRANS
Definition: mysql_com.h:993
@ SHUTDOWN_WAIT_CRITICAL_BUFFERS
Don't flush InnoDB buffers, flush other storage engines' buffers.
Definition: mysql_com.h:1014
@ SHUTDOWN_WAIT_ALL_BUFFERS
Flush InnoDB buffers and other storage engines' buffers.
Definition: mysql_com.h:1012
@ SHUTDOWN_WAIT_CONNECTIONS
Wait for existing connections to finish.
Definition: mysql_com.h:1006
@ SHUTDOWN_WAIT_TRANSACTIONS
Wait for existing transactons to finish.
Definition: mysql_com.h:1008
@ KILL_QUERY
Query level of the KILL command.
Definition: mysql_com.h:1016
@ SHUTDOWN_WAIT_UPDATES
Wait for existing updates to finish (=> no partial MyISAM update)
Definition: mysql_com.h:1010
@ KILL_CONNECTION
Connection level of the KILL command.
Definition: mysql_com.h:1018
@ SHUTDOWN_DEFAULT
Definition: mysql_com.h:1004
static int rnd(int max_value)
Definition: hp_test2.cc:550
#define STDCALL
Definition: my_compiler.h:144
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:9176
int my_socket
Definition: mysql.h:64
unsigned char * net_store_length(unsigned char *pkg, unsigned long long length)
void make_scrambled_password_323(char *to, const char *password)
enum_session_state_type
Type of state change information that the server can include in the Ok packet.
Definition: mysql_com.h:1068
@ SESSION_TRACK_GTIDS
See also: session_track_gtids.
Definition: mysql_com.h:1072
@ SESSION_TRACK_SCHEMA
Current schema.
Definition: mysql_com.h:1070
@ SESSION_TRACK_TRANSACTION_CHARACTERISTICS
Transaction chistics.
Definition: mysql_com.h:1073
@ SESSION_TRACK_TRANSACTION_STATE
Transaction state.
Definition: mysql_com.h:1074
@ SESSION_TRACK_STATE_CHANGE
track session state changes
Definition: mysql_com.h:1071
@ SESSION_TRACK_SYSTEM_VARIABLES
Session system variables.
Definition: mysql_com.h:1069
SERVER_STATUS_flags_enum
The status flags are a bit-field.
Definition: mysql_com.h:806
@ 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:832
@ SERVER_QUERY_WAS_SLOW
Definition: mysql_com.h:841
@ 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:814
@ SERVER_STATUS_NO_BACKSLASH_ESCAPES
Definition: mysql_com.h:834
@ SERVER_STATUS_DB_DROPPED
A database was dropped.
Definition: mysql_com.h:833
@ 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:827
@ SERVER_STATUS_AUTOCOMMIT
Server in auto_commit mode.
Definition: mysql_com.h:815
@ 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:860
@ SERVER_QUERY_NO_GOOD_INDEX_USED
Definition: mysql_com.h:817
@ 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:854
@ SERVER_QUERY_NO_INDEX_USED
Definition: mysql_com.h:818
@ SERVER_MORE_RESULTS_EXISTS
Multi query - next query exists.
Definition: mysql_com.h:816
@ 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:840
@ SERVER_PS_OUT_PARAMS
To mark ResultSet containing output parameter values.
Definition: mysql_com.h:845
connect_stage
Describes the current state of Asynchronous connection phase state machine.
Definition: mysql_com.h:1280
@ CONNECT_STAGE_COMPLETE
Connected or no async connect in progress.
Definition: mysql_com.h:1330
@ CONNECT_STAGE_AUTH_INIT_MULTI_AUTH
Start multi factor authentication.
Definition: mysql_com.h:1313
@ CONNECT_STAGE_AUTH_HANDLE_FIRST_AUTHENTICATE_USER
handle the result of the first auth plugin run
Definition: mysql_com.h:1304
@ CONNECT_STAGE_NET_COMPLETE_CONNECT
init the local data structures post connect
Definition: mysql_com.h:1290
@ CONNECT_STAGE_AUTHENTICATE
authentication phase
Definition: mysql_com.h:1298
@ CONNECT_STAGE_SEND_ONE_INIT_COMMAND
Send an init command.
Definition: mysql_com.h:1328
@ CONNECT_STAGE_NET_WAIT_CONNECT
wait for connection to be established
Definition: mysql_com.h:1288
@ CONNECT_STAGE_PREP_SELECT_DATABASE
Authenticated, set initial database if specified.
Definition: mysql_com.h:1323
@ CONNECT_STAGE_AUTH_RUN_SECOND_AUTHENTICATE_USER
Start the authentication process again with the plugin which server asked for.
Definition: mysql_com.h:1311
@ CONNECT_STAGE_PARSE_HANDSHAKE
parse the first packet
Definition: mysql_com.h:1294
@ CONNECT_STAGE_AUTH_HANDLE_SECOND_AUTHENTICATE_USER
Now read the results of the second plugin run.
Definition: mysql_com.h:1317
@ CONNECT_STAGE_PREP_INIT_COMMANDS
Prepare to send a sequence of init commands.
Definition: mysql_com.h:1325
@ CONNECT_STAGE_AUTH_RUN_FIRST_AUTHENTICATE_USER
run first auth plugin
Definition: mysql_com.h:1302
@ CONNECT_STAGE_AUTH_DO_MULTI_PLUGIN_AUTH
Invoke client plugins multi-auth authentication method.
Definition: mysql_com.h:1319
@ CONNECT_STAGE_AUTH_HANDLE_CHANGE_USER_REQUEST
Check if server asked to use a different authentication plugin.
Definition: mysql_com.h:1308
@ CONNECT_STAGE_AUTH_HANDLE_MULTI_AUTH_RESPONSE
Handle response from client plugins authentication method.
Definition: mysql_com.h:1321
@ CONNECT_STAGE_AUTH_FINISH_AUTH
Final cleanup.
Definition: mysql_com.h:1315
@ CONNECT_STAGE_NOT_STARTED
not connected
Definition: mysql_com.h:1284
@ CONNECT_STAGE_ESTABLISH_SSL
tls establishment
Definition: mysql_com.h:1296
@ CONNECT_STAGE_NET_BEGIN_CONNECT
begin connection to the server
Definition: mysql_com.h:1286
@ CONNECT_STAGE_AUTH_BEGIN
determine the plugin to use
Definition: mysql_com.h:1300
@ CONNECT_STAGE_READ_GREETING
read the first packet
Definition: mysql_com.h:1292
@ CONNECT_STAGE_INVALID
MYSQL not valid or an unknown state.
Definition: mysql_com.h:1282
@ CONNECT_STAGE_AUTH_READ_CHANGE_USER_RESULT
read the implied changed user auth, if any
Definition: mysql_com.h:1306
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:871
void scramble_323(char *to, const char *message, const char *password)
void scramble(char *to, const char *message, const char *password)
Produce an obscure octet sequence from password and random string, received from the server.
Definition: password.cc:270
void my_net_set_read_timeout(struct NET *net, unsigned int timeout)
void make_password_from_salt_323(char *to, const unsigned long *salt)
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:262
double my_rnd(struct rand_struct *)
Generate random number.
Definition: my_rnd.cc:50
enum_cursor_type
The flags used in COM_STMT_EXECUTE.
Definition: mysql_com.h:1042
@ CURSOR_TYPE_NO_CURSOR
Definition: mysql_com.h:1043
@ CURSOR_TYPE_FOR_UPDATE
Definition: mysql_com.h:1045
@ CURSOR_TYPE_SCROLLABLE
Definition: mysql_com.h:1046
@ CURSOR_TYPE_READ_ONLY
Definition: mysql_com.h:1044
@ PARAMETER_COUNT_AVAILABLE
On when the client will send the parameter count even for 0 parameters.
Definition: mysql_com.h:1051
#define MYSQL_ERRMSG_SIZE
Max length of a error message.
Definition: mysql_com.h:879
void create_random_string(char *to, unsigned int length, struct rand_struct *rand_st)
bool check_scramble(const unsigned char *reply, const char *message, const unsigned char *hash_stage2)
char * get_tty_password(const char *opt_message)
Definition: get_password.cc:145
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:2233
#define MYSQL_VIO
Definition: mysql_com.h:893
bool check_scramble_323(const unsigned char *reply, const char *message, unsigned long *salt)
enum_mysql_set_option
options for mysql_options()
Definition: mysql_com.h:1055
@ MYSQL_OPTION_MULTI_STATEMENTS_OFF
Definition: mysql_com.h:1057
@ MYSQL_OPTION_MULTI_STATEMENTS_ON
Definition: mysql_com.h:1056
void get_salt_from_password_323(unsigned long *res, const char *password)
void my_thread_end(void)
Deallocate memory used by the thread for book-keeping.
Definition: my_thr_init.cc:297
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:177
void net_clear(struct NET *net, bool check_buffer)
Clear (reinitialize) the NET structure for a new command.
Definition: net_serv.cc:263
#define SQLSTATE_LENGTH
Definition: mysql_com.h:74
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:386
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:1288
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:209
void make_scrambled_password(char *to, const char *password)
Definition: password.cc:250
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:435
void net_end(struct NET *net)
Definition: net_serv.cc:190
enum_resultset_metadata
Definition: mysql_com.h:1022
@ RESULTSET_METADATA_NONE
No metadata will be sent.
Definition: mysql_com.h:1024
@ RESULTSET_METADATA_FULL
The server will send all metadata.
Definition: mysql_com.h:1026
char * octet2hex(char *to, const char *str, unsigned int len)
void randominit(struct rand_struct *, unsigned long seed1, unsigned long seed2)
void my_net_local_init(struct NET *net)
Definition: libmysql.cc:959
bool net_flush(struct NET *net)
Flush write_buffer if not empty.
Definition: net_serv.cc:284
void get_salt_from_password(unsigned char *res, const char *password)
uint64_t net_field_length_ll(unsigned char **packet)
Definition: fido_common.h:82
void hash_password(unsigned long *to, const char *password, unsigned int password_len)
void net_claim_memory_ownership(struct NET *net, bool claim)
Definition: net_serv.cc:203
void make_password_from_salt(char *to, const unsigned char *hash_stage2)
static char * password
Definition: mysql_secure_installation.cc:57
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1063
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:75
static bool timeout(bool(*wait_condition)())
Timeout function.
Definition: log0meb.cc:497
ulong STDCALL net_field_length(uchar **packet)
Definition: pack.cc:37
ulong STDCALL net_field_length_checked(uchar **packet, ulong max_length)
Definition: pack.cc:60
Definition: mysql_com.h:912
unsigned int pkt_nr
Definition: mysql_com.h:923
char sqlstate[SQLSTATE_LENGTH+1]
Client library sqlstate buffer.
Definition: mysql_com.h:935
MYSQL_VIO vio
Definition: mysql_com.h:913
unsigned char error
Definition: mysql_com.h:931
unsigned char * read_pos
Definition: mysql_com.h:914
unsigned char reading_or_writing
Definition: mysql_com.h:927
unsigned int retry_count
Definition: mysql_com.h:924
bool compress
Definition: mysql_com.h:929
unsigned int * return_status
Definition: mysql_com.h:926
unsigned long length
Definition: mysql_com.h:921
unsigned long max_packet_size
Definition: mysql_com.h:922
unsigned long where_b
Definition: mysql_com.h:921
unsigned long max_packet
Definition: mysql_com.h:922
void * extension
Extension pointer, for the caller private use.
Definition: mysql_com.h:944
unsigned char save_char
Definition: mysql_com.h:928
unsigned int last_errno
Definition: mysql_com.h:930
unsigned char * buff
Definition: mysql_com.h:914
int fcntl
Definition: mysql_com.h:925
my_socket fd
Definition: mysql_com.h:915
unsigned char * write_pos
Definition: mysql_com.h:914
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:921
char last_error[MYSQL_ERRMSG_SIZE]
Client library error message buffer.
Definition: mysql_com.h:933
unsigned int compress_pkt_nr
Definition: mysql_com.h:923
unsigned int read_timeout
Definition: mysql_com.h:924
unsigned char * buff_end
Definition: mysql_com.h:914
unsigned int write_timeout
Definition: mysql_com.h:924
unsigned long buf_length
Definition: mysql_com.h:921
Definition: violite.h:319
Definition: mysql_com.h:1107
unsigned long seed2
Definition: mysql_com.h:1108
unsigned long max_value
Definition: mysql_com.h:1108
double max_value_dbl
Definition: mysql_com.h:1109
unsigned long seed1
Definition: mysql_com.h:1108
command
Definition: version_token.cc:279