MySQL 8.0.39
Source Code Documentation
|
classic protocol handshake between client<->router (and router<->server). More...
#include <classic_greeting_receiver.h>
Public Types | |
enum class | Stage { Init , ServerGreeting , ServerFirstGreeting , ClientGreeting , TlsAcceptInit , TlsAccept , ClientGreetingAfterTls , RequestPlaintextPassword , PlaintextPassword , Accepted , Authenticated , Error , Ok } |
stages of the handshake flow. More... | |
Public Types inherited from BasicProcessor | |
enum class | Result { Again , RecvFromClient , SendToClient , RecvFromServer , RecvFromBoth , SendToServer , SendableToServer , Suspend , Done , Void } |
Public Member Functions | |
stdx::expected< Result, std::error_code > | process () override |
void | stage (Stage stage) |
Stage | stage () const |
Public Member Functions inherited from Processor | |
BasicProcessor (MysqlRoutingClassicConnectionBase *conn) | |
Public Member Functions inherited from BasicProcessor | |
BasicProcessor (MysqlRoutingClassicConnectionBase *conn) | |
virtual | ~BasicProcessor ()=default |
const MysqlRoutingClassicConnectionBase * | connection () const |
MysqlRoutingClassicConnectionBase * | connection () |
Private Member Functions | |
stdx::expected< Result, std::error_code > | init () |
stdx::expected< Result, std::error_code > | server_greeting () |
client<-router: server::greeting. More... | |
stdx::expected< Result, std::error_code > | server_first_greeting () |
client<-router: server::greeting. More... | |
stdx::expected< Result, std::error_code > | client_greeting () |
handle client greeting. More... | |
stdx::expected< Result, std::error_code > | tls_accept_init () |
stdx::expected< Result, std::error_code > | tls_accept () |
stdx::expected< Result, std::error_code > | client_greeting_after_tls () |
stdx::expected< Result, std::error_code > | request_plaintext_password () |
stdx::expected< Result, std::error_code > | plaintext_password () |
receive the client's plaintext password. More... | |
stdx::expected< Result, std::error_code > | accepted () |
stdx::expected< Result, std::error_code > | authenticated () |
stdx::expected< Result, std::error_code > | error () |
Private Attributes | |
Stage | stage_ {Stage::Init} |
classic_protocol::message::server::Error | connect_err_ {} |
Additional Inherited Members | |
Protected Member Functions inherited from Processor | |
stdx::expected< Result, std::error_code > | send_server_failed (std::error_code ec) |
stdx::expected< Result, std::error_code > | recv_server_failed (std::error_code ec) |
stdx::expected< Result, std::error_code > | send_client_failed (std::error_code ec) |
stdx::expected< Result, std::error_code > | recv_client_failed (std::error_code ec) |
stdx::expected< Result, std::error_code > | server_socket_failed (std::error_code ec) |
stdx::expected< Result, std::error_code > | client_socket_failed (std::error_code ec) |
stdx::expected< void, std::error_code > | discard_current_msg (Channel *src_channel, ClassicProtocolState *src_protocol) |
discard to current message. More... | |
void | trace (Tracer::Event e) |
Tracer & | tracer () |
Static Protected Member Functions inherited from Processor | |
static void | log_fatal_error_code (const char *msg, std::error_code ec) |
log a message with error-code as error. More... | |
classic protocol handshake between client<->router (and router<->server).
|
strong |
|
private |
|
private |
|
private |
handle client greeting.
|
private |
|
private |
|
private |
|
private |
receive the client's plaintext password.
after client_send_request_for_plaintext_password()
|
overridevirtual |
Implements BasicProcessor.
|
private |
|
private |
client<-router: server::greeting.
|
private |
client<-router: server::greeting.
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
private |