20 #ifndef RIPPLE_OVERLAY_INBOUNDHANDOFF_H_INCLUDED
21 #define RIPPLE_OVERLAY_INBOUNDHANDOFF_H_INCLUDED
23 #include <ripple/overlay/impl/OverlayImpl.h>
45 boost::asio::strand<boost::asio::executor>
strand_;
102 #endif // RIPPLE_OVERLAY_INBOUNDHANDOFF_H_INCLUDED
const std::shared_ptr< PeerFinder::Slot > slot_
virtual ~InboundHandoff() override=default
std::uint32_t id_t
Uniquely identifies a peer.
void close()
Close connection.
void createPeer()
Instantiate and run the overlay peer.
Resource::Consumer usage_
boost::asio::strand< boost::asio::executor > strand_
std::unique_ptr< stream_type > stream_ptr_
InboundHandoff(Application &app, id_t id, std::shared_ptr< PeerFinder::Slot > const &slot, http_request_type &&request, PublicKey const &publicKey, ProtocolVersion protocol, Resource::Consumer consumer, std::unique_ptr< stream_type > &&stream_ptr, OverlayImpl &overlay)
void stop() override
Stop the child.
void sendResponse()
Send upgrade response to the client.
ProtocolVersion protocol_
http_request_type request_
A generic endpoint for log messages.
boost::beast::ssl_stream< middle_type > stream_type
void fail(std::string const &name, error_code const &ec)
Log and close.
boost::asio::ip::tcp::socket socket_type
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
boost::beast::tcp_stream middle_type
const beast::Journal journal_
An endpoint that consumes resources.
boost::system::error_code error_code
Wraps a Journal::Sink to prefix its output with a string.
const beast::IP::Endpoint remote_address_
InboundHandoff & operator=(InboundHandoff const &)=delete
A version-independent IP address and port combination.
void run()
Start the handshake.
socket_type & socket() const
Get underlying socket.
boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type
const PublicKey publicKey_