|
PcapPlusPlus
|
#include <SSLHandshake.h>
Public Member Functions | |
| SSLClientHelloMessage (uint8_t *data, size_t dataLen, SSLHandshakeLayer *container) | |
| ssl_tls_client_server_hello * | getClientHelloHeader () |
| SSLVersion | getHandshakeVersion () |
| uint8_t | getSessionIDLength () |
| uint8_t * | getSessionID () |
| int | getCipherSuiteCount () |
| SSLCipherSuite * | getCipherSuite (int index) |
| uint8_t | getCompressionMethodsValue () |
| int | getExtensionCount () |
| uint16_t | getExtensionsLenth () |
| SSLExtension * | getExtension (int index) |
| SSLExtension * | getExtensionOfType (uint16_t type) |
| SSLExtension * | getExtensionOfType (SSLExtensionType type) |
| template<class TExtension > | |
| TExtension * | getExtensionOfType () |
| std::string | toString () |
Public Member Functions inherited from pcpp::SSLHandshakeMessage | |
| virtual SSLHandshakeType | getHandshakeType () |
| virtual size_t | getMessageLength () |
| virtual bool | isMessageComplete () |
| SSLHandshakeLayer * | getContainingLayer () |
Additional Inherited Members | |
Static Public Member Functions inherited from pcpp::SSLHandshakeMessage | |
| static SSLHandshakeMessage * | createHandhakeMessage (uint8_t *data, size_t dataLen, SSLHandshakeLayer *container) |
Represents a client-hello message (type 1). Inherits from SSLHandshakeMessage and adds parsing of all fields of this message including the message extensions, cipher-suite list, etc.
| pcpp::SSLClientHelloMessage::SSLClientHelloMessage | ( | uint8_t * | data, |
| size_t | dataLen, | ||
| SSLHandshakeLayer * | container | ||
| ) |
C'tor for this class. Currently only in use in SSLHandshakeMessage::createHandhakeMessage() and shouldn't be used by a user
| [in] | data | The message as raw data |
| [in] | dataLen | Message raw data length in bytes |
| [in] | container | The SSL handshake layer which shall contain this message |
| SSLCipherSuite* pcpp::SSLClientHelloMessage::getCipherSuite | ( | int | index | ) |
Get a pointer to a cipher-suite by index. The cipher-suites are numbered according to their order of appearance in the message. If index is out of bounds (less than 0 or larger than total amount of cipher suites) NULL will be returned
| [in] | index | The index of the cipher-suite to return |
| int pcpp::SSLClientHelloMessage::getCipherSuiteCount | ( | ) |
|
inline |
| uint8_t pcpp::SSLClientHelloMessage::getCompressionMethodsValue | ( | ) |
| SSLExtension* pcpp::SSLClientHelloMessage::getExtension | ( | int | index | ) |
Get a pointer to an extension by index. The extensions are numbered according to their order of appearance in the message. If index is out of bounds (less than 0 or larger than total amount of extensions) NULL will be returned
| [in] | index | The index of the extension to return |
| int pcpp::SSLClientHelloMessage::getExtensionCount | ( | ) |
| SSLExtension* pcpp::SSLClientHelloMessage::getExtensionOfType | ( | uint16_t | type | ) |
Get a pointer to an extension by numeric type field. Every extension has a 2-byte numeric value representing its type (for example: renegotiation info extension type is 0x1ff). This method gets the type and returns a pointer to the extension object
| [in] | type | The 2-byte numeric type of the extension |
| SSLExtension* pcpp::SSLClientHelloMessage::getExtensionOfType | ( | SSLExtensionType | type | ) |
Get a pointer to an extension by its enum type
| [in] | type | The type of extension to return |
| TExtension * pcpp::SSLClientHelloMessage::getExtensionOfType | ( | ) |
Get a pointer to an extension by its class type. This is a templated method that is used with the type of the requested extension and returns the first extension instance of this type
| uint16_t pcpp::SSLClientHelloMessage::getExtensionsLenth | ( | ) |
| SSLVersion pcpp::SSLClientHelloMessage::getHandshakeVersion | ( | ) |
| uint8_t* pcpp::SSLClientHelloMessage::getSessionID | ( | ) |
| uint8_t pcpp::SSLClientHelloMessage::getSessionIDLength | ( | ) |
|
virtual |
Implements pcpp::SSLHandshakeMessage.