#include <FizzAcceptorHandshakeHelper.h>
Definition at line 45 of file FizzAcceptorHandshakeHelper.h.
References folly::pushmi::__adl::noexcept(), and start.
const folly::SocketAddress & clientAddr_
std::shared_ptr< fizz::extensions::TokenBindingContext > tokenBindingContext_
std::shared_ptr< fizz::server::FizzServerContext > context_
LoggingCallback * loggingCallback_
wangle::TransportInfo & tinfo_
std::chrono::steady_clock::time_point acceptTime_
Definition at line 40 of file FizzAcceptorHandshakeHelper.cpp.
References folly::gen::move.
46 asyncSock->cacheAddresses();
constexpr detail::Map< Move > move
std::unique_ptr< AsyncFizzServerT, folly::DelayedDestruction::Destructor > UniquePtr
AsyncFizzServerT< ServerStateMachine > AsyncFizzServer
std::unique_ptr< AsyncSocket, Destructor > UniquePtr
void wangle::FizzAcceptorHandshakeHelper::fizzHandshakeAttemptFallback |
( |
std::unique_ptr< folly::IOBuf > |
clientHello | ) |
|
|
overrideprotectedvirtual |
|
overrideprotectednoexcept |
Definition at line 82 of file FizzAcceptorHandshakeHelper.cpp.
References callback_, folly::gen::move, now(), and transport_.
88 auto elapsedTime = std::chrono::duration_cast<std::chrono::milliseconds>(
90 VLOG(3) <<
"Fizz handshake error after " << elapsedTime.count() <<
" ms; " 94 auto handshakeException =
95 folly::make_exception_wrapper<FizzHandshakeException>(
folly::fbstring what() const
virtual void logFizzHandshakeError(const fizz::server::AsyncFizzServer &, const folly::exception_wrapper &)=0
constexpr detail::Map< Move > move
std::chrono::steady_clock::time_point now()
wangle::AcceptorHandshakeHelper::Callback * callback_
fizz::server::AsyncFizzServer::UniquePtr transport_
LoggingCallback * loggingCallback_
virtual void connectionError(folly::AsyncTransportWrapper *transport, folly::exception_wrapper ex, folly::Optional< SSLErrorEnum > sslErr) noexcept=0
size_t getRawBytesReceived() const override
std::chrono::steady_clock::time_point acceptTime_
wangle::SSLErrorEnum sslError_
size_t getRawBytesWritten() const override
|
overrideprotectednoexcept |
Definition at line 51 of file FizzAcceptorHandshakeHelper.cpp.
References callback_, folly::gen::move, now(), transport_, and uint8_t.
57 VLOG(3) <<
"Fizz handshake success";
70 if (handshakeLogging && handshakeLogging->clientSni) {
72 std::make_shared<std::string>(*handshakeLogging->clientSni);
std::chrono::steady_clock::time_point acceptTime
constexpr detail::Map< Move > move
std::chrono::steady_clock::time_point now()
wangle::AcceptorHandshakeHelper::Callback * callback_
const State & getState() const
virtual void logFizzHandshakeSuccess(const fizz::server::AsyncFizzServer &)=0
std::shared_ptr< std::string > sslServerName
virtual void connectionReady(folly::AsyncTransportWrapper::UniquePtr transport, std::string nextProtocol, SecureTransportType secureTransportType, folly::Optional< SSLErrorEnum > sslErr) noexcept=0
fizz::server::AsyncFizzServer::UniquePtr transport_
std::shared_ptr< fizz::extensions::TokenBindingServerExtension > extension_
std::string getApplicationProtocol() const noexceptoverride
LoggingCallback * loggingCallback_
HandshakeLogging * handshakeLogging() const
std::string getSecurityProtocol() const override
wangle::TransportInfo & tinfo_
std::chrono::steady_clock::time_point acceptTime_
std::chrono::milliseconds sslSetupTime
folly::Optional< uint8_t > negotiatedTokenBindingKeyParameters
|
overrideprotectedvirtualnoexcept |
handshakeErr() is called if an error occurs while establishing the SSL connection.
The HandshakeCB will be uninstalled before handshakeErr() is called.
- Parameters
-
sock | SSL socket on which the handshake was initiated |
ex | An exception representing the error. |
Implements folly::AsyncSSLSocket::HandshakeCB.
Definition at line 149 of file FizzAcceptorHandshakeHelper.cpp.
References callback_, now(), and sslSocket_.
152 auto elapsedTime = std::chrono::duration_cast<std::chrono::milliseconds>(
154 VLOG(3) <<
"SSL handshake error after " << elapsedTime.count() <<
" ms; " 158 auto sslEx = folly::make_exception_wrapper<SSLException>(
size_t getRawBytesReceived() const override
size_t getRawBytesWritten() const override
std::chrono::steady_clock::time_point now()
wangle::AcceptorHandshakeHelper::Callback * callback_
folly::AsyncSSLSocket::UniquePtr sslSocket_
virtual void connectionError(folly::AsyncTransportWrapper *transport, folly::exception_wrapper ex, folly::Optional< SSLErrorEnum > sslErr) noexcept=0
std::chrono::steady_clock::time_point acceptTime_
wangle::SSLErrorEnum sslError_
|
overrideprotectedvirtualnoexcept |
handshakeSuc() is called when a new SSL connection is established, i.e., after SSL_accept/connect() returns successfully.
The HandshakeCB will be uninstalled before handshakeSuc() is called.
- Parameters
-
sock | SSL socket on which the handshake was initiated |
Implements folly::AsyncSSLSocket::HandshakeCB.
Definition at line 126 of file FizzAcceptorHandshakeHelper.cpp.
References callback_, wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields(), folly::gen::move, now(), and sslSocket_.
129 if (!appProto.empty()) {
130 VLOG(3) <<
"Client selected next protocol " << appProto;
132 VLOG(3) <<
"Client did not select a next protocol";
std::chrono::steady_clock::time_point acceptTime
constexpr detail::Map< Move > move
std::chrono::steady_clock::time_point now()
wangle::AcceptorHandshakeHelper::Callback * callback_
virtual void connectionReady(folly::AsyncTransportWrapper::UniquePtr transport, std::string nextProtocol, SecureTransportType secureTransportType, folly::Optional< SSLErrorEnum > sslErr) noexcept=0
folly::AsyncSSLSocket::UniquePtr sslSocket_
static void fillSSLTransportInfoFields(folly::AsyncSSLSocket *sock, TransportInfo &tinfo)
wangle::TransportInfo & tinfo_
std::chrono::steady_clock::time_point acceptTime_
std::string getApplicationProtocol() const noexceptoverride
std::chrono::milliseconds sslSetupTime
Implements wangle::AcceptorHandshakeHelper.
Definition at line 25 of file FizzAcceptorHandshakeHelper.cpp.
References callback_, folly::gen::move, and transport_.
37 transport_->accept(
this);
std::shared_ptr< folly::SSLContext > sslContext_
constexpr detail::Map< Move > move
wangle::AcceptorHandshakeHelper::Callback * callback_
std::shared_ptr< fizz::extensions::TokenBindingContext > tokenBindingContext_
fizz::server::AsyncFizzServer::UniquePtr transport_
std::shared_ptr< fizz::extensions::TokenBindingServerExtension > extension_
std::shared_ptr< fizz::server::FizzServerContext > context_
virtual fizz::server::AsyncFizzServer::UniquePtr createFizzServer(folly::AsyncSSLSocket::UniquePtr sslSock, const std::shared_ptr< fizz::server::FizzServerContext > &fizzContext, const std::shared_ptr< fizz::ServerExtensions > &extensions)
std::chrono::steady_clock::time_point wangle::FizzAcceptorHandshakeHelper::acceptTime_ |
|
protected |
The documentation for this class was generated from the following files: