diff --git a/source/extensions/transport_sockets/tls/context_impl.h b/source/extensions/transport_sockets/tls/context_impl.h index c533e0cc9c4f..77c52874becb 100644 --- a/source/extensions/transport_sockets/tls/context_impl.h +++ b/source/extensions/transport_sockets/tls/context_impl.h @@ -250,6 +250,11 @@ class ServerContextImpl : public ContextImpl, public Envoy::Ssl::ServerContext { ServerContextImpl(Stats::Scope& scope, const Envoy::Ssl::ServerContextConfig& config, const std::vector& server_names, TimeSource& time_source); + // Select the TLS certificate context in SSL_CTX_set_select_certificate_cb() callback with + // ClientHello details. This is made public for use by custom TLS extensions who want to + // manually create and use this as a client hello callback. + enum ssl_select_cert_result_t selectTlsContext(const SSL_CLIENT_HELLO* ssl_client_hello); + private: using SessionContextID = std::array; @@ -259,9 +264,6 @@ class ServerContextImpl : public ContextImpl, public Envoy::Ssl::ServerContext { HMAC_CTX* hmac_ctx, int encrypt); bool isClientEcdsaCapable(const SSL_CLIENT_HELLO* ssl_client_hello); bool isClientOcspCapable(const SSL_CLIENT_HELLO* ssl_client_hello); - // Select the TLS certificate context in SSL_CTX_set_select_certificate_cb() callback with - // ClientHello details. - enum ssl_select_cert_result_t selectTlsContext(const SSL_CLIENT_HELLO* ssl_client_hello); OcspStapleAction ocspStapleAction(const ServerContextImpl::TlsContext& ctx, bool client_ocsp_capable);