Implementation of RFC 7692, the permessage-deflate WebSocket extension. More...
Namespaces | |
Classes | |
class | disabled |
Stub class for use when disabling permessage_deflate extension. More... | |
class | enabled |
Variables | |
static uint8_t const | default_server_max_window_bits = 15 |
Default value for server_max_window_bits as defined by RFC 7692. More... | |
static uint8_t const | min_server_max_window_bits = 8 |
Minimum value for server_max_window_bits as defined by RFC 7692. More... | |
static uint8_t const | max_server_max_window_bits = 15 |
Maximum value for server_max_window_bits as defined by RFC 7692. More... | |
static uint8_t const | default_client_max_window_bits = 15 |
Default value for client_max_window_bits as defined by RFC 7692. More... | |
static uint8_t const | min_client_max_window_bits = 8 |
Minimum value for client_max_window_bits as defined by RFC 7692. More... | |
static uint8_t const | max_client_max_window_bits = 15 |
Maximum value for client_max_window_bits as defined by RFC 7692. More... | |
Implementation of RFC 7692, the permessage-deflate WebSocket extension.
init
lib::error_code init(bool is_server)
Performs initialization
is_implimented
bool is_implimented()
Returns whether or not the object impliments the extension or not
is_enabled
bool is_enabled()
Returns whether or not the extension was negotiated for the current connection
generate_offer
std::string generate_offer() const
Create an extension offer string based on local policy
validate_response
lib::error_code validate_response(http::attribute_list const & response)
Negotiate the parameters of extension use
negotiate
err_str_pair negotiate(http::attribute_list const & attributes)
Negotiate the parameters of extension use
compress
lib::error_code compress(std::string const & in, std::string & out)
Compress the bytes in in
and append them to out
decompress
lib::error_code decompress(uint8_t const * buf, size_t len, std::string & out)
Decompress len
bytes from buf
and append them to string out
|
static |
Default value for server_max_window_bits as defined by RFC 7692.
Definition at line 179 of file enabled.hpp.
Referenced by websocketpp::extensions::permessage_deflate::enabled< config >::decompress().
|
static |
Minimum value for server_max_window_bits as defined by RFC 7692.
NOTE: A value of 8 is not actually supported by zlib, the deflate library that WebSocket++ uses. To preserve backwards compatibility with RFC 7692 and previous versions of the library a value of 8 is accepted by the library but will always be negotiated as 9.
Definition at line 187 of file enabled.hpp.
Referenced by websocketpp::extensions::permessage_deflate::enabled< config >::decompress().
|
static |
Maximum value for server_max_window_bits as defined by RFC 7692.
Definition at line 189 of file enabled.hpp.
|
static |
Default value for client_max_window_bits as defined by RFC 7692.
Definition at line 192 of file enabled.hpp.
Referenced by websocketpp::extensions::permessage_deflate::enabled< config >::decompress().
|
static |
Minimum value for client_max_window_bits as defined by RFC 7692.
NOTE: A value of 8 is not actually supported by zlib, the deflate library that WebSocket++ uses. To preserve backwards compatibility with RFC 7692 and previous versions of the library a value of 8 is accepted by the library but will always be negotiated as 9.
Definition at line 200 of file enabled.hpp.
Referenced by websocketpp::extensions::permessage_deflate::enabled< config >::decompress().
|
static |
Maximum value for client_max_window_bits as defined by RFC 7692.
Definition at line 202 of file enabled.hpp.