|
PcapPlusPlus
19.12
|
Go to the documentation of this file. 1 #ifndef PACKETPP_SSL_HANDSHAKE_MESSAGE
2 #define PACKETPP_SSL_HANDSHAKE_MESSAGE
46 : m_Id(id), m_KeyExAlg(keyExAlg), m_AuthAlg(authAlg), m_SymKeyAlg(symKeyAlg), m_MACAlg(MACAlg), m_Name(name) {}
51 uint16_t
getID()
const {
return m_Id; }
56 std::string
asString()
const {
return m_Name; }
206 : m_Data(data), m_DataLen(dataLen), m_AllDataExists(
allDataExists) {}
228 bool m_AllDataExists;
232 class SSLHandshakeLayer;
285 virtual std::string
toString()
const = 0;
400 template<
class TExtension>
507 template<
class TExtension>
723 std::vector<SSLClientCertificateType> m_ClientCertificateTypes;
916 template<
class TExtension>
919 size_t vecSize = m_ExtensionList.size();
920 for (
size_t i = 0; i < vecSize; i++)
922 SSLExtension* curElem = const_cast<SSLExtension*>(m_ExtensionList.at(i));
923 if (dynamic_cast<TExtension*>(curElem) != NULL)
924 return (TExtension*)curElem;
930 template<
class TExtension>
933 size_t vecSize = m_ExtensionList.size();
934 for (
size_t i = 0; i < vecSize; i++)
936 SSLExtension* curElem = const_cast<SSLExtension*>(m_ExtensionList.at(i));
937 if (dynamic_cast<TExtension*>(curElem) != NULL)
938 return (TExtension*)curElem;
Definition: SSLCommon.h:56
Definition: SSLHandshake.h:243
Definition: SSLHandshake.h:171
SSLAuthenticationAlgorithm getAuthAlg() const
Definition: SSLHandshake.h:66
uint8_t getCompressionMethodsValue() const
size_t getMessageLength() const
SSLVersion
Definition: SSLCommon.h:112
std::string getHostName() const
size_t getServerKeyExchangeParamsLength() const
Definition: SSLHandshake.h:150
Definition: SSLHandshake.h:642
SSLx509Certificate(uint8_t *data, size_t dataLen, bool allDataExists)
Definition: SSLHandshake.h:205
SSLClientHelloMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
bool allDataExists() const
Definition: SSLHandshake.h:223
uint16_t getExtensionsLenth() const
uint16_t getID() const
Definition: SSLHandshake.h:51
SSLHelloRequestMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:584
SSLKeyExchangeAlgorithm
Definition: SSLCommon.h:232
SSLKeyExchangeAlgorithm getKeyExchangeAlg() const
Definition: SSLHandshake.h:61
SSLHashingAlgorithm getMACAlg() const
Definition: SSLHandshake.h:76
std::string toString() const
Definition: SSLHandshake.h:842
size_t getClientKeyExchangeParamsLength() const
uint8_t * getSessionID() const
std::string toString() const
virtual SSLHandshakeType getHandshakeType() const
SSLFinishedMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:812
SSLExtensionType
Definition: SSLCommon.h:404
uint8_t getSessionIDLength() const
SSLServerHelloMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
SSLHandshakeType getHandshakeType() const
uint16_t extensionType
Definition: SSLHandshake.h:153
std::string toString() const
uint8_t * getSignedHash() const
std::string toString() const
SSLAuthenticationAlgorithm
Definition: SSLCommon.h:265
size_t getSessionTicketDataLength() const
ssl_tls_client_server_hello * getClientHelloHeader() const
Definition: SSLHandshake.h:322
SSLServerNameIndicationExtension(uint8_t *data)
Definition: SSLHandshake.h:178
std::string toString() const
SSLSymetricEncryptionAlgorithm getSymKeyAlg() const
Definition: SSLHandshake.h:71
std::string asString() const
Definition: SSLHandshake.h:56
Definition: SSLHandshake.h:527
Definition: SSLHandshake.h:573
static SSLHandshakeMessage * createHandhakeMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
virtual bool isMessageComplete() const
Definition: SSLHandshake.h:732
Definition: SSLHandshake.h:801
uint8_t * getCertificateAuthorityData() const
SSLServerHelloDoneMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:743
size_t getDataLength() const
Definition: SSLHandshake.h:216
SSLCipherSuite * getCipherSuite(int index) const
std::vector< SSLClientCertificateType > & getCertificateTypes()
Definition: SSLHandshake.h:193
int getNumOfCertificates() const
uint8_t * getData() const
SSLExtension * getExtension(int index) const
SSLHandshakeType
Definition: SSLCommon.h:129
uint8_t * getClientKeyExchangeParams() const
uint16_t getTypeAsInt() const
SSLSymetricEncryptionAlgorithm
Definition: SSLCommon.h:298
std::string toString() const
uint16_t extensionDataLength
Definition: SSLHandshake.h:155
SSLHandshakeLayer * getContainingLayer() const
Definition: SSLHandshake.h:280
SSLx509Certificate * getCertificate(int index) const
TExtension * getExtensionOfType() const
Definition: SSLHandshake.h:917
size_t getSignedHashLength() const
Definition: SSLHandshake.h:683
static SSLCipherSuite * getCipherSuiteByName(std::string name)
Definition: SSLHandshake.h:108
uint8_t getSessionIDLength() const
std::string toString() const
SSLNewSessionTicketMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:853
SSLVersion getHandshakeVersion() const
SSLServerKeyExchangeMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:611
The main namespace for the PcapPlusPlus lib.
Definition: SSLHandshake.h:303
size_t getSignedHashLength() const
int getCipherSuiteCount() const
uint8_t * getServerKeyExchangeParams() const
ssl_tls_client_server_hello * getServerHelloHeader() const
Definition: SSLHandshake.h:437
uint8_t * getData() const
Definition: SSLHandshake.h:211
SSLCertificateRequestMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
std::string toString() const
Definition: SSLHandshake.h:884
int getExtensionCount() const
uint8_t getCompressionMethodsValue() const
int getExtensionCount() const
uint16_t getLength() const
Definition: SSLHandshake.h:29
SSLHashingAlgorithm
Definition: SSLCommon.h:377
uint8_t * getSessionTicketData() const
uint16_t getExtensionsLenth() const
std::string toString() const
SSLCertificateMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLLayer.h:305
SSLCertificateVerifyMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:770
uint8_t * getSignedHash() const
SSLExtension(uint8_t *data)
SSLExtension * getExtension(int index) const
SSLVersion getHandshakeVersion() const
virtual size_t getMessageLength() const
Definition: SSLHandshake.h:759
SSLCipherSuite * getCipherSuite() const
SSLCipherSuite(uint16_t id, SSLKeyExchangeAlgorithm keyExAlg, SSLAuthenticationAlgorithm authAlg, SSLSymetricEncryptionAlgorithm symKeyAlg, SSLHashingAlgorithm MACAlg, const char *name)
Definition: SSLHandshake.h:41
Definition: SSLHandshake.h:600
SSLExtensionType getType() const
uint16_t getTotalLength() const
Definition: PointerVector.h:24
Definition: SSLHandshake.h:418
SSLUnknownMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:895
std::string toString() const
uint8_t * getSessionID() const
std::string toString() const
SSLClientKeyExchangeMessage(uint8_t *data, size_t dataLen, SSLHandshakeLayer *container)
Definition: SSLHandshake.h:653
std::string toString() const
TExtension * getExtensionOfType() const
Definition: SSLHandshake.h:931
uint8_t extensionData[]
Definition: SSLHandshake.h:157
static SSLCipherSuite * getCipherSuiteByID(uint16_t id)
virtual std::string toString() const =0
size_t getCertificateAuthorityLength() const