Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
SSLTypes.h File Reference

Go to the source code of this file.

Classes

struct  GrayLib::cSSL
 

Namespaces

 GrayLib
 

Macros

#define CIPHERSUITEDEF(a, b, c, d, e, f, g, h, i)   a = b,
 

Typedefs

typedef BYTE GrayLib::SSL_Compress_t
 
typedef WORD GrayLib::SSL_CipherSuite_t
 SSL_CipherSuite_TYPE stored as 2 bytes. More...
 
typedef BYTE GrayLib::SSL_KeyEx_t
 

Enumerations

enum  GrayLib::SSL_STATE_TYPE {
  GrayLib::SSL_Unknown = 0 , GrayLib::SSL_ClientHello , GrayLib::SSL_ServerHello , GrayLib::SSL_SERVER_CERTIFICATE ,
  GrayLib::SSL_SERVER_KEY_EXCHANGE , GrayLib::SSL_CERTIFICATE_REQUEST , GrayLib::SSL_ServerHello_DONE , GrayLib::SSL_CLIENT_CERTIFICATE ,
  GrayLib::SSL_CLIENT_KEY_EXCHANGE , GrayLib::SSL_CERTIFICATE_VERIFY , GrayLib::SSL_CLIENT_CHANGE_CIPHER_SPEC , GrayLib::SSL_CLIENT_FINISHED ,
  GrayLib::SSL_SERVER_CHANGE_CIPHER_SPEC , GrayLib::SSL_SERVER_FINISHED , GrayLib::SSL_FLUSH_BUFFERS , GrayLib::SSL_HANDSHAKE_WRAPUP ,
  GrayLib::SSL_HANDSHAKE_COMPLETE
}
 
enum  GrayLib::SSL_MSG_TYPE {
  GrayLib::SSL_MSG_UNK = 0 , GrayLib::SSL_MSG_CHANGE_CIPHER_SPEC = 20 , GrayLib::SSL_MSG_ALERT = 21 , GrayLib::SSL_MSG_HANDSHAKE = 22 ,
  GrayLib::SSL_MSG_APPLICATION_DATA = 23 , GrayLib::SSL_MSG_V2 = 0x80
}
 
enum  GrayLib::SSL_VERSION_MAJOR_TYPE { GrayLib::SSL_VERSION_MAJOR_BYTE = 3 }
 Version as Major, minor byte order. 0x300=SSL 3.0, 0x301=TLS 1.0, 0x303=TLS 1.2. More...
 
enum  GrayLib::SSL_VERSION_TYPE {
  GrayLib::SSL_VERSION_NULL = -1 , GrayLib::SSL_VER_SSL_3 = 0 , GrayLib::SSL_VER_TLS_1_0 = 1 , GrayLib::SSL_VER_TLS_1_1 = 2 ,
  GrayLib::SSL_VER_TLS_1_2 = 3 , GrayLib::SSL_VERSION_SUPPORT_MAX = SSL_VER_TLS_1_2 , GrayLib::SSL_VERSION_QTY = 4
}
 
enum  GrayLib::SSL_COMPRESS_TYPE { GrayLib::SSL_COMPRESS_NULL = 0 , GrayLib::SSL_COMPRESS_DEFLATE = 1 }
 
enum  GrayLib::SSL_CipherSuite_TYPE { GrayLib::TLS_NULL_WITH_NULL_NULL = 0 , GrayLib::SSL_EMPTY_RENEGOTIATION_INFO = 0xFF , GrayLib::SSL_FALLBACK_SCSV = 0x5600 }
 
enum  GrayLib::SSL_KeyExchange_TYPE {
  GrayLib::SSL_KeyExchange_NONE = 0 , GrayLib::SSL_KeyExchange_RSA , GrayLib::SSL_KeyExchange_DHE_RSA , GrayLib::SSL_KeyExchange_ECDHE_RSA ,
  GrayLib::SSL_KeyExchange_ECDHE_ECDSA , GrayLib::SSL_KeyExchange_PSK , GrayLib::SSL_KeyExchange_DHE_PSK , GrayLib::SSL_KeyExchange_RSA_PSK ,
  GrayLib::SSL_KeyExchange_ECDHE_PSK , GrayLib::SSL_KeyExchange_ECDH_RSA , GrayLib::SSL_KeyExchange_ECDH_ECDSA
}
 
enum  GrayLib::SSL_SIG_TYPE { GrayLib::SSL_SIG_ANON = 0 , GrayLib::SSL_SIG_RSA = 1 , GrayLib::SSL_SIG_ECDSA = 3 }
 
enum  GrayLib::SSL_CERT_TYPE { GrayLib::SSL_CERT_NULL = 0 , GrayLib::SSL_CERT_TYPE_RSA_SIGN = 1 , GrayLib::SSL_CERT_TYPE_ECDSA_SIGN = 64 }
 
enum  GrayLib::SSL_HAND_TYPE {
  GrayLib::SSL_HAND_HelloRequest = 0 , GrayLib::SSL_HAND_ClientHello = 1 , GrayLib::SSL_HAND_ServerHello = 2 , GrayLib::SSL_HAND_NEW_SESSION_TICKET = 4 ,
  GrayLib::SSL_HAND_Certificate = 11 , GrayLib::SSL_HAND_ServerKeyExchange = 12 , GrayLib::SSL_HAND_CertificateRequest = 13 , GrayLib::SSL_HAND_ServerHelloDone = 14 ,
  GrayLib::SSL_HAND_CertificateVerify = 15 , GrayLib::SSL_HAND_ClientKeyExchange = 16 , GrayLib::SSL_HAND_Finished = 20
}
 
enum  GrayLib::SSL_MAX_FRAG_TYPE {
  GrayLib::SSL_MAX_FRAG_LEN_NONE = 0 , GrayLib::SSL_MAX_FRAG_LEN_512 = 1 , GrayLib::SSL_MAX_FRAG_LEN_1024 = 2 , GrayLib::SSL_MAX_FRAG_LEN_2048 = 3 ,
  GrayLib::SSL_MAX_FRAG_LEN_4096 = 4 , GrayLib::SSL_MAX_FRAG_LEN_QTY = 5
}
 
enum  GrayLib::TLS_EXT_TYPE {
  GrayLib::TLS_EXT_server_name = 0 , GrayLib::TLS_EXT_MaxFragmentLength = 1 , GrayLib::TLS_EXT_TruncatedHMAC = 4 , GrayLib::TLS_EXT_status_request = 5 ,
  GrayLib::TLS_EXT_supported_groups = 10 , GrayLib::TLS_EXT_ec_point_formats = 11 , GrayLib::TLS_EXT_signature_algorithms = 13 , GrayLib::TLS_EXT_ALPN = 16 ,
  GrayLib::TLS_EXT_EncryptThenMac = 22 , GrayLib::TLS_EXT_ExtendedMasterSecret = 23 , GrayLib::TLS_EXT_SessionTicket = 35 , GrayLib::TLS_EXT_renegotiation_info = 0xFF01
}
 
enum  GrayLib::TLS_ECP_PF_t { GrayLib::TLS_ECP_PF_UNCOMPRESSED = 0 , GrayLib::TLS_ECP_PF_COMPRESSED = 1 }
 
enum  GrayLib::SSL_ALERT_LEVEL_TYPE { GrayLib::SSL_ALERT_LEVEL_WARNING = 1 , GrayLib::SSL_ALERT_LEVEL_FATAL = 2 }
 
enum  GrayLib::SSL_ALERT_TYPE {
  GrayLib::SSL_ALERT_SSL3_CLOSE_NOTIFY = 0 , GrayLib::SSL_ALERT_SSL3_UNEXPECTED_MESSAGE = 10 , GrayLib::SSL_ALERT_SSL3_BAD_RECORD_MAC = 20 , GrayLib::SSL_ALERT_TLS1_DECRYPTION_FAILED = 21 ,
  GrayLib::SSL_ALERT_TLS1_RECORD_OVERFLOW = 22 , GrayLib::SSL_ALERT_SSL3_DECOMPRESSION_FAILURE = 30 , GrayLib::SSL_ALERT_SSL3_HANDSHAKE_FAILURE = 40 , GrayLib::SSL_ALERT_SSL3_NO_CERTIFICATE = 41 ,
  GrayLib::SSL_ALERT_SSL3_BAD_CERTIFICATE = 42 , GrayLib::SSL_ALERT_SSL3_UNSUPPORTED_CERTIFICATE = 43 , GrayLib::SSL_ALERT_SSL3_CERTIFICATE_REVOKED = 44 , GrayLib::SSL_ALERT_SSL3_CERTIFICATE_EXPIRED = 45 ,
  GrayLib::SSL_ALERT_SSL3_CERTIFICATE_UNKNOWN = 46 , GrayLib::SSL_ALERT_SSL3_ILLEGAL_PARAMETER = 47 , GrayLib::SSL_ALERT_TLS1_UNKNOWN_CA = 48 , GrayLib::SSL_ALERT_TLS1_ACCESS_DENIED = 49 ,
  GrayLib::SSL_ALERT_TLS1_DECODE_ERROR = 50 , GrayLib::SSL_ALERT_TLS1_DECRYPT_ERROR = 51 , GrayLib::SSL_ALERT_TLS1_EXPORT_RESTRICTION = 60 , GrayLib::SSL_ALERT_TLS1_PROTOCOL_VERSION = 70 ,
  GrayLib::SSL_ALERT_TLS1_INSUFFICIENT_SECURITY = 71 , GrayLib::SSL_ALERT_TLS1_INTERNAL_ERROR = 80 , GrayLib::SSL_ALERT_INAPROPRIATE_FALLBACK = 86 , GrayLib::SSL_ALERT_TLS1_USER_CANCELLED = 90 ,
  GrayLib::SSL_ALERT_TLS1_NO_RENEGOTIATION = 100 , GrayLib::SSL_ALERT_UNSUPPORTED_EXT = 110 , GrayLib::SSL_ALERT_UNRECOGNIZED_NAME = 112 , GrayLib::SSL_ALERT_UNKNOWN_PSK_IDENTITY = 115 ,
  GrayLib::SSL_ALERT_NO_APPLICATION_PROTOCOL = 120
}
 

Detailed Description

Macro Definition Documentation

◆ CIPHERSUITEDEF

#define CIPHERSUITEDEF (   a,
  b,
  c,
  d,
  e,
  f,
  g,
  h,
 
)    a = b,