Sane C++ Libraries
C++ Platform Abstraction Libraries
Loading...
Searching...
No Matches
SC::HttpWebSocketHandshake Struct Reference

Dependency-free RFC 6455 opening handshake helpers. More...

#include <HttpWebSocket.h>

Static Public Member Functions

static Result createClientKey (Span< const uint8_t > nonce, Span< char > storage, StringSpan &key)
 
static Result validateClientKey (StringSpan key)
 
static Result computeAccept (StringSpan clientKey, Span< char > storage, StringSpan &accept)
 
static bool headerContainsToken (StringSpan headerValue, StringSpan token)
 
static HttpWebSocketHandshakeResult validateServerRequest (const HttpWebSocketServerHandshakeRequestView &request)
 
static HttpWebSocketHandshakeResult validateServerRequest (const HttpRequest &request, HttpWebSocketServerHandshakeRequestView *view=nullptr)
 
static Result validateClientResponse (const HttpWebSocketClientHandshakeResponseView &response, StringSpan expectedClientKey)
 
static Result validateClientResponse (const HttpAsyncClientResponse &response, StringSpan expectedClientKey)
 
static Result prepareClientRequest (HttpAsyncClientRequest &request, StringSpan clientKey)
 
static Result writeServerAccept (HttpResponse &response, StringSpan clientKey, Span< char > acceptStorage, StringSpan &accept)
 
static Result acceptServerConnection (HttpConnection &connection, HttpWebSocketTransportView &transport, Span< char > acceptStorage)
 
static Result rejectServerConnection (HttpResponse &response, const HttpWebSocketHandshakeResult &result)
 

Static Public Attributes

static constexpr size_t ClientKeyLength = 24
 
static constexpr size_t AcceptKeyLength = 28
 
static constexpr size_t NonceLength = 16
 

Detailed Description

Dependency-free RFC 6455 opening handshake helpers.


The documentation for this struct was generated from the following file: