MySQL 8.0.40
Source Code Documentation
|
#include <statement_reader.h>
Classes | |
class | SSL_Deleter |
Public Types | |
using | protocol_type = net::ip::tcp |
using | socket_type = typename protocol_type::socket |
using | endpoint_type = typename protocol_type::endpoint |
Public Member Functions | |
ProtocolBase (socket_type client_sock, endpoint_type client_ep, TlsServerContext &tls_ctx) | |
ProtocolBase (const ProtocolBase &)=delete | |
ProtocolBase (ProtocolBase &&)=delete | |
ProtocolBase & | operator= (const ProtocolBase &)=delete |
ProtocolBase & | operator= (ProtocolBase &&rhs)=delete |
virtual | ~ProtocolBase ()=default |
virtual void | encode_error (const ErrorResponse &resp)=0 |
virtual void | encode_ok (const uint64_t affected_rows=0, const uint64_t last_insert_id=0, const uint16_t server_status=0, const uint16_t warning_count=0)=0 |
void | encode_ok (const OkResponse &resp) |
virtual void | encode_resultset (const ResultsetResponse &response)=0 |
stdx::expected< size_t, std::error_code > | read_ssl (const net::mutable_buffer &buf) |
stdx::expected< size_t, std::error_code > | write_ssl (const net::const_buffer &buf) |
stdx::expected< size_t, std::error_code > | avail_ssl () |
template<class CompletionToken > | |
void | async_send_tls (CompletionToken &&token) |
template<class CompletionToken > | |
void | async_send (CompletionToken &&token) |
template<class CompletionToken > | |
void | async_receive_tls (CompletionToken &&token) |
template<class CompletionToken > | |
void | async_receive (CompletionToken &&token) |
template<class CompletionToken > | |
void | async_tls_accept (CompletionToken &&token) |
const std::vector< uint8_t > & | send_buffer () const |
const net::ip::tcp::socket & | client_socket () const |
void | username (const std::string &username) |
std::string | username () const |
void | auth_method_name (const std::string &auth_method_name) |
std::string | auth_method_name () const |
void | auth_method_data (const std::string &auth_method_data) |
std::string | auth_method_data () const |
void | init_tls () |
bool | is_tls () |
const SSL * | ssl () const |
stdx::expected< void, std::error_code > | tls_accept () |
net::steady_timer & | exec_timer () |
void | cancel () |
void | terminate () |
terminate the current connection. More... | |
net::io_context & | io_context () |
Static Public Member Functions | |
static std::error_code | map_tls_error_code (std::error_code ec) |
static bool | authenticate (const std::string &auth_method_name, const std::string &auth_method_data, const std::string &password, const std::vector< uint8_t > &auth_response) |
Protected Attributes | |
socket_type | client_socket_ |
endpoint_type | client_ep_ |
net::steady_timer | exec_timer_ {io_context()} |
std::string | username_ {} |
std::string | auth_method_name_ {} |
std::string | auth_method_data_ {} |
TlsServerContext & | tls_ctx_ |
std::unique_ptr< SSL, SSL_Deleter > | ssl_ |
std::vector< uint8_t > | recv_buffer_ |
std::vector< uint8_t > | send_buffer_ |
Private Attributes | |
Monitor< bool > | is_terminated_ {false} |
using server_mock::ProtocolBase::endpoint_type = typename protocol_type::endpoint |
using server_mock::ProtocolBase::socket_type = typename protocol_type::socket |
server_mock::ProtocolBase::ProtocolBase | ( | ProtocolBase::socket_type | client_sock, |
ProtocolBase::endpoint_type | client_ep, | ||
TlsServerContext & | tls_ctx | ||
) |
|
delete |
|
delete |
|
virtualdefault |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
stdx::expected< size_t, std::error_code > server_mock::ProtocolBase::avail_ssl | ( | ) |
void server_mock::ProtocolBase::cancel | ( | ) |
|
inline |
|
pure virtual |
Implemented in server_mock::MySQLClassicProtocol, and server_mock::MySQLXProtocol.
|
inline |
|
pure virtual |
Implemented in server_mock::MySQLClassicProtocol, and server_mock::MySQLXProtocol.
|
pure virtual |
Implemented in server_mock::MySQLClassicProtocol, and server_mock::MySQLXProtocol.
|
inline |
void server_mock::ProtocolBase::init_tls | ( | ) |
|
inline |
|
inline |
|
inlinestatic |
|
delete |
|
delete |
stdx::expected< size_t, std::error_code > server_mock::ProtocolBase::read_ssl | ( | const net::mutable_buffer & | buf | ) |
|
inline |
|
inline |
void server_mock::ProtocolBase::terminate | ( | ) |
terminate the current connection.
sets is_terminated(true) and cancels the current operation.
may be called from another thread.
stdx::expected< void, std::error_code > server_mock::ProtocolBase::tls_accept | ( | ) |
|
inline |
|
inline |
stdx::expected< size_t, std::error_code > server_mock::ProtocolBase::write_ssl | ( | const net::const_buffer & | buf | ) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
private |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |