|
ORE Studio 0.0.4
|
Service for managing protocol handshake between client and server. More...
#include <handshake_service.hpp>

Static Public Member Functions | |
| static boost::asio::awaitable< messaging::compression_type > | perform_client_handshake (net::connection &conn, const std::function< std::uint32_t()> &sequence_generator, const std::string &client_identifier, std::uint8_t supported_compression=0) |
| Perform client-side handshake. | |
| static boost::asio::awaitable< std::optional< messaging::compression_type > > | perform_server_handshake (net::connection &conn, std::uint32_t sequence, const std::string &server_identifier) |
| Perform server-side handshake. | |
Service for managing protocol handshake between client and server.
Encapsulates the handshake protocol logic for both client and server sides, handling the three-way handshake:
|
static |
Perform client-side handshake.
Sends handshake request, waits for response, validates compatibility, and sends acknowledgment.
| conn | Connection to perform handshake on |
| sequence_generator | Function that generates sequence numbers |
| client_identifier | Client identifier string |
| supported_compression | Bitmask of supported compression types (default: 0 = no compression support) |
| connection_error | if handshake fails |
|
static |
Perform server-side handshake.
Reads handshake request, validates version, sends response, and waits for acknowledgment.
| conn | Connection to perform handshake on |
| sequence | Sequence number for response frame |
| server_identifier | Server identifier string |