Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cSSLMsgX Class Reference

#include <cSSLMsg.h>

Inheritance diagram for GrayLib::cSSLMsgX:
GrayLib::cSSL

Classes

union  uContent
 < m_nMsgType packet content/payload type specific data. More...
 

Static Public Member Functions

static HRESULT GRAYCALL CheckSSLClientHello (const void *pData, size_t nSize)
 

Public Attributes

cSSLMsgHeader m_Hdr
 header. size=5 More...
 
union CATTR_PACKED GrayLib::cSSLMsgX::uContent m_u
 

Static Public Attributes

static const size_t k_SSL_COMPRESSION_ADD = 1024
 allow for a maximum of 1024 of compression expansion if enabled. More...
 
static const size_t k_SSL_PADDING_ADD = 256
 Cipher-suites using HMAC. More...
 
static const size_t k_Msg_Size_Max = sizeof(cSSLMsgHeader) + 16 + k_MAC_Size_Max + k_SSL_PADDING_ADD + k_Content_Size_Max + k_SSL_COMPRESSION_ADD
 Max possible size of *this. More...
 
- Static Public Attributes inherited from GrayLib::cSSL
static const size_t k_PSK_Size_Max = 32
 256 bits More...
 
static const size_t k_MAC_Size_Max = 48
 16 to 48. SHA-384 used for HMAC. like k_HashSizeMax More...
 
static const size_t k_Number_Size_Max = 1024
 Max reasonable size of a big number used for crypt purposes. 8k bits. like cBigInteger::k_SIZE_MAX. More...
 
static const size_t k_Content_Size_Max = 16384
 Size of content. >= k_MaxFragLens[MAX]. More...
 
static const WORD k_MaxFragLens [SSL_MAX_FRAG_LEN_QTY]
 

Member Function Documentation

◆ CheckSSLClientHello()

HRESULT GRAYCALL GrayLib::cSSLMsgX::CheckSSLClientHello ( const void *  pData,
size_t  nSize 
)
static

Is pvData valid SSL/TLS SSL_MSG_HANDSHAKE cSSLMsgHandshake SSL_HAND_ClientHello?

Returns
length of the data consumed. HRESULT_WIN32_C(ERROR_IO_INCOMPLETE) = incomplete but not fatal.

Member Data Documentation

◆ k_Msg_Size_Max

const size_t GrayLib::cSSLMsgX::k_Msg_Size_Max = sizeof(cSSLMsgHeader) + 16 + k_MAC_Size_Max + k_SSL_PADDING_ADD + k_Content_Size_Max + k_SSL_COMPRESSION_ADD
static

Max possible size of *this.

◆ k_SSL_COMPRESSION_ADD

const size_t GrayLib::cSSLMsgX::k_SSL_COMPRESSION_ADD = 1024
static

allow for a maximum of 1024 of compression expansion if enabled.

◆ k_SSL_PADDING_ADD

const size_t GrayLib::cSSLMsgX::k_SSL_PADDING_ADD = 256
static

Cipher-suites using HMAC.

◆ m_Hdr

cSSLMsgHeader GrayLib::cSSLMsgX::m_Hdr

header. size=5

◆ m_u

union CATTR_PACKED GrayLib::cSSLMsgX::uContent GrayLib::cSSLMsgX::m_u

The documentation for this class was generated from the following files: