MySQL 8.4.2
Source Code Documentation
|
Values for the capabilities flag bitmask used by the MySQL protocol. More...
Macros | |
#define | CLIENT_LONG_PASSWORD 1 |
Use the improved version of Old Password Authentication. More... | |
#define | CLIENT_FOUND_ROWS 2 |
Send found rows instead of affected rows in EOF_Packet. More... | |
#define | CLIENT_LONG_FLAG 4 |
Get all column flags. More... | |
#define | CLIENT_CONNECT_WITH_DB 8 |
Database (schema) name can be specified on connect in Handshake Response Packet. More... | |
#define | CLIENT_NO_SCHEMA 16 |
DEPRECATED: Don't allow database.table.column. More... | |
#define | CLIENT_COMPRESS 32 |
Compression protocol supported. More... | |
#define | CLIENT_ODBC 64 |
Special handling of ODBC behavior. More... | |
#define | CLIENT_LOCAL_FILES 128 |
Can use LOAD DATA LOCAL. More... | |
#define | CLIENT_IGNORE_SPACE 256 |
Ignore spaces before '('. More... | |
#define | CLIENT_PROTOCOL_41 512 |
New 4.1 protocol. More... | |
#define | CLIENT_INTERACTIVE 1024 |
This is an interactive client. More... | |
#define | CLIENT_SSL 2048 |
Use SSL encryption for the session. More... | |
#define | CLIENT_IGNORE_SIGPIPE 4096 |
Client only flag. More... | |
#define | CLIENT_TRANSACTIONS 8192 |
Client knows about transactions. More... | |
#define | CLIENT_RESERVED 16384 |
DEPRECATED: Old flag for 4.1 protocol More... | |
#define | CLIENT_RESERVED2 32768 |
DEPRECATED: Old flag for 4.1 authentication \ CLIENT_SECURE_CONNECTION. More... | |
#define | CLIENT_MULTI_STATEMENTS (1UL << 16) |
Enable/disable multi-stmt support. More... | |
#define | CLIENT_MULTI_RESULTS (1UL << 17) |
Enable/disable multi-results. More... | |
#define | CLIENT_PS_MULTI_RESULTS (1UL << 18) |
Multi-results and OUT parameters in PS-protocol. More... | |
#define | CLIENT_PLUGIN_AUTH (1UL << 19) |
Client supports plugin authentication. More... | |
#define | CLIENT_CONNECT_ATTRS (1UL << 20) |
Client supports connection attributes. More... | |
#define | CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA (1UL << 21) |
Enable authentication response packet to be larger than 255 bytes. More... | |
#define | CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS (1UL << 22) |
Don't close the connection for a user account with expired password. More... | |
#define | CLIENT_SESSION_TRACK (1UL << 23) |
Capable of handling server state change information. More... | |
#define | CLIENT_DEPRECATE_EOF (1UL << 24) |
Client no longer needs EOF_Packet and will use OK_Packet instead. More... | |
#define | CLIENT_OPTIONAL_RESULTSET_METADATA (1UL << 25) |
The client can handle optional metadata information in the resultset. More... | |
#define | CLIENT_ZSTD_COMPRESSION_ALGORITHM (1UL << 26) |
Compression protocol extended to support zstd compression method. More... | |
#define | CLIENT_QUERY_ATTRIBUTES (1UL << 27) |
Support optional extension for query parameters into the COM_QUERY and COM_STMT_EXECUTE packets. More... | |
#define | MULTI_FACTOR_AUTHENTICATION (1UL << 28) |
Support Multi factor authentication. More... | |
#define | CLIENT_CAPABILITY_EXTENSION (1UL << 29) |
This flag will be reserved to extend the 32bit capabilities structure to 64bits. More... | |
#define | CLIENT_SSL_VERIFY_SERVER_CERT (1UL << 30) |
Verify server certificate. More... | |
#define | CLIENT_REMEMBER_OPTIONS (1UL << 31) |
Don't reset the options after an unsuccessful connect. More... | |
Values for the capabilities flag bitmask used by the MySQL protocol.
Currently need to fit into 32 bits.
Each bit represents an optional feature of the protocol.
Both the client and the server are sending these.
The intersection of the two determines whast optional parts of the protocol will be used.
#define CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS (1UL << 22) |
Don't close the connection for a user account with expired password.
Announces support for expired password extension.
Can handle expired passwords.
#define CLIENT_CAPABILITY_EXTENSION (1UL << 29) |
This flag will be reserved to extend the 32bit capabilities structure to 64bits.
#define CLIENT_COMPRESS 32 |
Compression protocol supported.
Supports compression.
Switches to Compression compressed protocol after successful authentication.
#define CLIENT_CONNECT_ATTRS (1UL << 20) |
Client supports connection attributes.
Permits connection attributes in Protocol::HandshakeResponse41.
Sends connection attributes in Protocol::HandshakeResponse41.
#define CLIENT_CONNECT_WITH_DB 8 |
Database (schema) name can be specified on connect in Handshake Response Packet.
Supports schema-name in Handshake Response Packet.
Handshake Response Packet contains a schema-name.
#define CLIENT_DEPRECATE_EOF (1UL << 24) |
Client no longer needs EOF_Packet and will use OK_Packet instead.
Can send OK after a Text Resultset.
Expects an OK_Packet (instead of EOF_Packet) after the resultset rows of a Text Resultset.
To support CLIENT_SESSION_TRACK, additional information must be sent after all successful commands. Although the OK_Packet is extensible, the EOF_Packet is not due to the overlap of its bytes with the content of the Text Resultset Row.
Therefore, the EOF_Packet in the Text Resultset is replaced with an OK_Packet. EOF_Packet is deprecated as of MySQL 5.7.5.
#define CLIENT_FOUND_ROWS 2 |
Send found rows instead of affected rows in EOF_Packet.
#define CLIENT_IGNORE_SIGPIPE 4096 |
Client only flag.
Not used.
Do not issue SIGPIPE if network failures occur (libmysqlclient only).
#define CLIENT_IGNORE_SPACE 256 |
Ignore spaces before '('.
Parser can ignore spaces before '('.
Let the parser ignore spaces before '('.
#define CLIENT_INTERACTIVE 1024 |
This is an interactive client.
Use System_variables::net_wait_timeout versus System_variables::net_interactive_timeout.
Supports interactive and noninteractive clients.
Client is interactive.
#define CLIENT_LOCAL_FILES 128 |
Can use LOAD DATA LOCAL.
Enables the LOCAL INFILE request of LOAD DATA|XML.
Will handle LOCAL INFILE request.
#define CLIENT_LONG_FLAG 4 |
Get all column flags.
Longer flags in Protocol::ColumnDefinition320.
Supports longer flags.
Expects longer flags.
#define CLIENT_LONG_PASSWORD 1 |
Use the improved version of Old Password Authentication.
Not used.
#define CLIENT_MULTI_RESULTS (1UL << 17) |
Enable/disable multi-results.
Can send multiple resultsets for COM_QUERY. Error if the server needs to send them and client does not support them.
Can handle multiple resultsets for COM_QUERY.
CLIENT_PROTOCOL_41
#define CLIENT_MULTI_STATEMENTS (1UL << 16) |
Enable/disable multi-stmt support.
Also sets CLIENT_MULTI_RESULTS. Currently not checked anywhere.
Can handle multiple statements per COM_QUERY and COM_STMT_PREPARE.
May send multiple statements per COM_QUERY and COM_STMT_PREPARE.
CLIENT_PROTOCOL_41
#define CLIENT_NO_SCHEMA 16 |
DEPRECATED: Don't allow database.table.column.
#define CLIENT_ODBC 64 |
Special handling of ODBC behavior.
#define CLIENT_OPTIONAL_RESULTSET_METADATA (1UL << 25) |
The client can handle optional metadata information in the resultset.
#define CLIENT_PLUGIN_AUTH (1UL << 19) |
Client supports plugin authentication.
Sends extra data in Initial Handshake Packet and supports the pluggable authentication protocol.
Supports authentication plugins.
CLIENT_PROTOCOL_41
#define CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA (1UL << 21) |
Enable authentication response packet to be larger than 255 bytes.
When the ability to change default plugin require that the initial password field in the Protocol::HandshakeResponse41 paclet can be of arbitrary size. However, the 4.1 client-server protocol limits the length of the auth-data-field sent from client to server to 255 bytes. The solution is to change the type of the field to a true length encoded string and indicate the protocol change with this client capability flag.
Understands length-encoded integer for auth response data in Protocol::HandshakeResponse41.
Length of auth response data in Protocol::HandshakeResponse41 is a length-encoded integer.
#define CLIENT_PROTOCOL_41 512 |
New 4.1 protocol.
Supports the 4.1 protocol.
Uses the 4.1 protocol.
#define CLIENT_PS_MULTI_RESULTS (1UL << 18) |
Multi-results and OUT parameters in PS-protocol.
Can send multiple resultsets for COM_STMT_EXECUTE.
Can handle multiple resultsets for COM_STMT_EXECUTE.
CLIENT_PROTOCOL_41
#define CLIENT_QUERY_ATTRIBUTES (1UL << 27) |
Support optional extension for query parameters into the COM_QUERY and COM_STMT_EXECUTE packets.
Expects an optional part containing the query parameter set(s). Executes the query for each set of parameters or returns an error if more than 1 set of parameters is sent and the server can't execute it.
Can send the optional part containing the query parameter set(s).
#define CLIENT_REMEMBER_OPTIONS (1UL << 31) |
Don't reset the options after an unsuccessful connect.
Client only flag.
Typically passed via mysql_real_connect() 's client_flag parameter.
#define CLIENT_RESERVED 16384 |
DEPRECATED: Old flag for 4.1 protocol
#define CLIENT_RESERVED2 32768 |
DEPRECATED: Old flag for 4.1 authentication \ CLIENT_SECURE_CONNECTION.
#define CLIENT_SESSION_TRACK (1UL << 23) |
Capable of handling server state change information.
Its a hint to the server to include the state change information in OK_Packet.
Can set SERVER_SESSION_STATE_CHANGED in the SERVER_STATUS_flags_enum and send Session State Information in a OK_Packet.
Expects the server to send Session State Information in a OK_Packet.
#define CLIENT_SSL 2048 |
Use SSL encryption for the session.
Supports SSL
Switch to SSL after sending the capability-flags.
#define CLIENT_SSL_VERIFY_SERVER_CERT (1UL << 30) |
#define CLIENT_TRANSACTIONS 8192 |
Client knows about transactions.
Can send status flags in OK_Packet / EOF_Packet.
Expects status flags in OK_Packet / EOF_Packet.
#define CLIENT_ZSTD_COMPRESSION_ALGORITHM (1UL << 26) |
Compression protocol extended to support zstd compression method.
This capability flag is used to send zstd compression level between client and server provided both client and server are enabled with this flag.
Server sets this flag when global variable protocol-compression-algorithms has zstd in its list of supported values.
Client sets this flag when it is configured to use zstd compression method.
#define MULTI_FACTOR_AUTHENTICATION (1UL << 28) |
Support Multi factor authentication.
Server sends AuthNextFactor packet after every nth factor authentication method succeeds, except the last factor authentication.
Client reads AuthNextFactor packet sent by server and initiates next factor authentication method.