26#ifndef MYSQL_ROUTING_DESTINATION_TLS_CONTEXT_INCLUDED
27#define MYSQL_ROUTING_DESTINATION_TLS_CONTEXT_INCLUDED
45 unsigned int ssl_session_cache_timeout)
47 ssl_session_cache_size_(ssl_session_cache_size),
48 ssl_session_cache_timeout_(ssl_session_cache_timeout) {}
58 void ca_file(
const std::string &
file);
63 void ca_path(
const std::string &
path);
68 void crl_file(
const std::string &
file);
73 void crl_path(
const std::string &
path);
78 void curves(
const std::string &curves);
83 void ciphers(
const std::string &ciphers);
86 const std::string &get_ca_file();
87 const std::string &get_ca_path();
88 const std::string &get_crl_file();
89 const std::string &get_crl_path();
90 const std::string &get_curves();
91 const std::string &get_ciphers();
96 void client_key_and_cert_file(std::string
key, std::string cert);
121 std::shared_ptr<TlsClientContext>
get(
const std::string &dest_id,
122 const std::string &hostname);
134 bool reload(std::string &out_error);
152 bool session_cache_mode_{
true};
153 size_t ssl_session_cache_size_{};
TlsClientContext per destination.
Definition: destination_ssl_context.h:42
std::string curves_
Definition: destination_ssl_context.h:142
std::string crl_file_
Definition: destination_ssl_context.h:140
std::mutex mtx_
Definition: destination_ssl_context.h:150
std::string ciphers_
Definition: destination_ssl_context.h:143
std::string ca_file_
Definition: destination_ssl_context.h:138
std::string key_file_
Definition: destination_ssl_context.h:146
std::string ca_path_
Definition: destination_ssl_context.h:139
DestinationTlsContext(bool session_cache_mode, size_t ssl_session_cache_size, unsigned int ssl_session_cache_timeout)
Definition: destination_ssl_context.h:44
std::string crl_path_
Definition: destination_ssl_context.h:141
std::map< std::string, std::shared_ptr< TlsClientContext > > tls_contexts_
Definition: destination_ssl_context.h:148
std::string cert_file_
Definition: destination_ssl_context.h:145
static char * path
Definition: mysqldump.cc:153
std::chrono::seconds seconds
Definition: authorize_manager.cc:71
static mysql_service_status_t get(THD **thd) noexcept
Definition: mysql_current_thread_reader_all_empty.cc:31
bool verify(const std::string &digest, const std::string &message, const std::string &public_key_content)
Verify a message signed by the private key pair of the provided public key.
Definition: my_base64_encode.cc:113
required string key
Definition: replication_asynchronous_connection_failover.proto:60
static bool reload(MYSQL_THD thd)
Reloads the rules into the in-memory table.
Definition: rewriter_plugin.cc:333
#define ROUTING_EXPORT
Definition: routing_export.h:15
SslVerify
Definition: ssl_mode.h:38