43 : m_Id(id), m_KeyExAlg(keyExAlg), m_AuthAlg(authAlg), m_SymKeyAlg(symKeyAlg), m_MACAlg(MACAlg), m_Name(name)
286 : m_Data(data), m_DataLen(dataLen), m_AllDataExists(
allDataExists)
318 return m_AllDataExists;
322 std::unique_ptr<Asn1Record> m_Asn1Record;
325 bool m_AllDataExists;
328 class SSLHandshakeLayer;
962 std::vector<SSLClientCertificateType> m_ClientCertificateTypes;
1162 size_t vecSize = m_ExtensionList.size();
1163 for (
size_t i = 0; i < vecSize; i++)
1166 if (
dynamic_cast<TExtension*
>(curElem) !=
nullptr)
1167 return (TExtension*)curElem;
1175 size_t vecSize = m_ExtensionList.size();
1176 for (
size_t i = 0; i < vecSize; i++)
1179 if (
dynamic_cast<TExtension*
>(curElem) !=
nullptr)
1180 return (TExtension*)curElem;
Definition: Asn1Codec.h:366
Definition: PointerVector.h:29
Definition: SSLHandshake.h:765
std::string toString() const
SSLCertificateMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
SSLx509Certificate * getCertificate(int index) const
int getNumOfCertificates() const
Definition: SSLHandshake.h:923
size_t getCertificateAuthorityLength() const
std::vector< SSLClientCertificateType > & getCertificateTypes()
std::string toString() const
uint8_t * getCertificateAuthorityData() const
SSLCertificateRequestMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:999
SSLCertificateVerifyMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:1008
size_t getSignedHashLength() const
uint8_t * getSignedHash() const
std::string toString() const
Definition: SSLHandshake.h:30
SSLAuthenticationAlgorithm getAuthAlg() const
Definition: SSLHandshake.h:73
SSLHashingAlgorithm getMACAlg() const
Definition: SSLHandshake.h:89
uint16_t getID() const
Definition: SSLHandshake.h:49
SSLCipherSuite(uint16_t id, SSLKeyExchangeAlgorithm keyExAlg, SSLAuthenticationAlgorithm authAlg, SSLSymetricEncryptionAlgorithm symKeyAlg, SSLHashingAlgorithm MACAlg, const char *name)
Definition: SSLHandshake.h:41
SSLSymetricEncryptionAlgorithm getSymKeyAlg() const
Definition: SSLHandshake.h:81
SSLKeyExchangeAlgorithm getKeyExchangeAlg() const
Definition: SSLHandshake.h:65
static SSLCipherSuite * getCipherSuiteByName(std::string name)
std::string asString() const
Definition: SSLHandshake.h:57
static SSLCipherSuite * getCipherSuiteByID(uint16_t id)
Definition: SSLHandshake.h:399
uint16_t getCipherSuiteID(int index, bool &isValid) const
uint16_t getExtensionsLength() const
SSLExtension * getExtensionOfType(uint16_t type) const
SSLExtension * getExtensionOfType(SSLExtensionType type) const
SSLClientHelloMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
TExtension * getExtensionOfType() const
Definition: SSLHandshake.h:1160
uint8_t getSessionIDLength() const
SSLCipherSuite * getCipherSuite(int index) const
int getCipherSuiteCount() const
ssl_tls_client_server_hello * getClientHelloHeader() const
Definition: SSLHandshake.h:463
uint8_t * getSessionID() const
uint8_t getCompressionMethodsValue() const
SSLExtension * getExtension(int index) const
int getExtensionCount() const
ClientHelloTLSFingerprint generateTLSFingerprint() const
SSLVersion getHandshakeVersion() const
std::string toString() const
Definition: SSLHandshake.h:881
SSLClientKeyExchangeMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:890
uint8_t * getClientKeyExchangeParams() const
std::string toString() const
size_t getClientKeyExchangeParamsLength() const
Definition: SSLHandshake.h:124
uint16_t getLength() const
SSLExtension(uint8_t *data)
uint16_t getTotalLength() const
uint16_t getTypeAsInt() const
SSLExtensionType getType() const
uint8_t * getData() const
Definition: SSLHandshake.h:1042
uint8_t * getSignedHash() const
SSLFinishedMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:1051
size_t getSignedHashLength() const
std::string toString() const
Definition: SSLLayer.h:319
Definition: SSLHandshake.h:339
static SSLHandshakeMessage * createHandshakeMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
virtual size_t getMessageLength() const
virtual SSLHandshakeType getHandshakeType() const
virtual std::string toString() const =0
SSLHandshakeLayer * getContainingLayer() const
Definition: SSLHandshake.h:375
virtual bool isMessageComplete() const
Definition: SSLHandshake.h:810
SSLHelloRequestMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:819
std::string toString() const
Definition: SSLHandshake.h:1084
size_t getSessionTicketDataLength() const
std::string toString() const
SSLNewSessionTicketMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:1093
uint8_t * getSessionTicketData() const
Definition: SSLHandshake.h:971
std::string toString() const
SSLServerHelloDoneMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:980
Definition: SSLHandshake.h:587
uint8_t getSessionIDLength() const
SSLExtension * getExtensionOfType(uint16_t type) const
uint16_t getExtensionsLength() const
SSLServerHelloMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
SSLExtension * getExtensionOfType(SSLExtensionType type) const
ssl_tls_client_server_hello * getServerHelloHeader() const
Definition: SSLHandshake.h:642
int getExtensionCount() const
SSLVersion getHandshakeVersion() const
uint16_t getCipherSuiteID(bool &isValid) const
uint8_t getCompressionMethodsValue() const
SSLExtension * getExtension(int index) const
SSLCipherSuite * getCipherSuite() const
std::string toString() const
TExtension * getExtensionOfType() const
Definition: SSLHandshake.h:1173
ServerHelloTLSFingerprint generateTLSFingerprint() const
uint8_t * getSessionID() const
Definition: SSLHandshake.h:838
SSLServerKeyExchangeMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:847
uint8_t * getServerKeyExchangeParams() const
size_t getServerKeyExchangeParamsLength() const
std::string toString() const
Definition: SSLHandshake.h:189
std::string getHostName() const
SSLServerNameIndicationExtension(uint8_t *data)
Definition: SSLHandshake.h:195
Definition: SSLHandshake.h:210
std::vector< SSLVersion > getSupportedVersions() const
SSLSupportedVersionsExtension(uint8_t *data)
Definition: SSLHandshake.h:216
Definition: SSLHandshake.h:1127
std::string toString() const
size_t getMessageLength() const
SSLHandshakeType getHandshakeType() const
SSLUnknownMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:1136
Definition: SSLCommon.h:112
Definition: SSLHandshake.h:275
SSLx509Certificate(uint8_t *data, size_t dataLen, bool allDataExists)
Definition: SSLHandshake.h:285
Asn1SequenceRecord * getRootAsn1Record()
size_t getDataLength() const
Definition: SSLHandshake.h:300
bool allDataExists() const
Definition: SSLHandshake.h:316
uint8_t * getData() const
Definition: SSLHandshake.h:292
Definition: SSLHandshake.h:231
std::vector< uint16_t > getSupportedGroups() const
TLSSupportedGroupsExtension(uint8_t *data)
Definition: SSLHandshake.h:237
The main namespace for the PcapPlusPlus lib.
SSLKeyExchangeAlgorithm
Definition: SSLCommon.h:325
SSLExtensionType
Definition: SSLCommon.h:501
SSLSymetricEncryptionAlgorithm
Definition: SSLCommon.h:391
SSLAuthenticationAlgorithm
Definition: SSLCommon.h:358
SSLHandshakeType
Definition: SSLCommon.h:216
SSLHashingAlgorithm
Definition: SSLCommon.h:474
Definition: SSLHandshake.h:410
std::vector< uint8_t > ecPointFormats
Definition: SSLHandshake.h:420
std::pair< std::string, std::string > toStringAndMD5()
std::vector< uint16_t > extensions
Definition: SSLHandshake.h:416
std::vector< uint16_t > cipherSuites
Definition: SSLHandshake.h:414
std::vector< uint16_t > supportedGroups
Definition: SSLHandshake.h:418
uint16_t tlsVersion
Definition: SSLHandshake.h:412
Definition: SSLHandshake.h:166
uint8_t extensionData[]
Definition: SSLHandshake.h:172
uint16_t extensionType
Definition: SSLHandshake.h:168
uint16_t extensionDataLength
Definition: SSLHandshake.h:170
Definition: SSLHandshake.h:597
uint16_t tlsVersion
Definition: SSLHandshake.h:599
uint16_t cipherSuite
Definition: SSLHandshake.h:601
std::vector< uint16_t > extensions
Definition: SSLHandshake.h:603
std::pair< std::string, std::string > toStringAndMD5()
Definition: SSLCommon.h:56