|
PcapPlusPlus
Next
|
#include <QuicLayer.h>
Classes | |
| struct | VarintValueAndSize |
Public Member Functions | |
| uint64_t | getLength () const |
| size_t | getHeaderLen () const override |
| ProtectedPayload | getProtectedPayload () const |
Public Member Functions inherited from pcpp::QuicV1LongHeaderLayer | |
| QuicPacketType | getPacketType () const override |
| uint32_t | getVersion () const |
| std::vector< uint8_t > | getDestinationConnectionId () const |
| std::string | getDestinationConnectionIdAsString () const |
| std::vector< uint8_t > | getSourceConnectionId () const |
| std::string | getSourceConnectionIdAsString () const |
Public Member Functions inherited from pcpp::QuicV1Layer | |
| QuicHeaderForm | getHeaderForm () const |
| uint8_t | getFixedBit () const |
| void | parseNextLayer () override |
| void | computeCalculateFields () override |
| Does nothing for this layer. | |
| std::string | toString () const override |
| OsiModelLayer | getOsiModelLayer () const override |
Public Member Functions inherited from pcpp::Layer | |
| ~Layer () override | |
| Layer * | getNextLayer () const |
| Layer * | getPrevLayer () const |
| ProtocolType | getProtocol () const |
| bool | isMemberOfProtocolFamily (ProtocolTypeFamily protocolTypeFamily) const |
| uint8_t * | getData () const |
| size_t | getDataLen () const |
| uint8_t * | getLayerPayload () const |
| size_t | getLayerPayloadSize () const |
| bool | isAllocatedToPacket () const |
| void | copyData (uint8_t *toArr) const |
| Copy the raw data of this layer to another array. More... | |
| size_t | copyData (uint8_t *dest, size_t destSize) const |
| Copy the raw data of this layer to another array, with a specified maximum size. More... | |
| uint8_t * | getDataPtr (size_t offset=0) const override |
Additional Inherited Members | |
Public Types inherited from pcpp::QuicV1Layer | |
| enum class | QuicPacketType : uint8_t { Initial = 0 , ZeroRTT = 1 , Handshake = 2 , Retry = 3 , VersionNegotiation = 253 , OneRtt = 254 } |
| enum class | QuicHeaderForm : uint8_t { ShortHeader = 0 , LongHeader = 1 } |
Static Public Member Functions inherited from pcpp::QuicV1Layer | |
| static QuicV1Layer * | parseQuicLayer (uint8_t *data, size_t dataLen, Layer *prevLayer, Packet *packet) |
| static bool | isQuicPort (uint16_t port) |
Protected Member Functions inherited from pcpp::Layer | |
| Packet * | getAttachedPacket () |
| Get a pointer to the Packet this layer is attached to (if any). More... | |
| Packet const * | getAttachedPacket () const |
| Get a pointer to the Packet this layer is attached to (if any). More... | |
| void | allocData (size_t dataLen, bool zeroInit=true) |
| Requests the layer to allocate a new data buffer of the specified length. More... | |
| template<typename T , typename... Args> | |
| Layer * | constructNextLayer (uint8_t *data, size_t dataLen, Args &&... extraArgs) |
| Construct the next layer in the protocol stack. No validation is performed on the data. More... | |
| template<typename T , typename... Args> | |
| Layer * | constructNextLayer (uint8_t *data, size_t dataLen, Packet *packet, Args &&... extraArgs) |
| template<typename TFactory , typename... Args> | |
| Layer * | constructNextLayerFromFactory (TFactory factoryFn, uint8_t *data, size_t dataLen, Args &&... extraArgs) |
| Construct the next layer in the protocol stack using a factory functor. More... | |
| template<typename TFactory , typename... Args> | |
| Layer * | constructNextLayerFromFactory (TFactory factoryFn, uint8_t *data, size_t dataLen, Packet *packet, Args &&... extraArgs) |
| Construct the next layer in the protocol stack using a factory functor. More... | |
| template<typename T , typename... Args> | |
| Layer * | tryConstructNextLayer (uint8_t *data, size_t dataLen, Args &&... extraArgs) |
| template<typename T , typename... Args> | |
| Layer * | tryConstructNextLayer (uint8_t *data, size_t dataLen, Packet *packet, Args &&... extraArgs) |
| template<typename T , typename TFallback , typename... Args> | |
| Layer * | tryConstructNextLayerWithFallback (uint8_t *data, size_t dataLen, Args &&... extraArgs) |
| Try to construct the next layer in the protocol stack with a fallback option. More... | |
| template<typename T , typename TFallback , typename... Args> | |
| Layer * | tryConstructNextLayerWithFallback (uint8_t *data, size_t dataLen, Packet *packet, Args &&... extraArgs) |
| template<typename TFallback , typename TFactory , typename... Args> | |
| Layer * | tryConstructNextLayerFromFactoryWithFallback (TFactory factoryFn, uint8_t *data, size_t dataLen, Args &&... extraArgs) |
| Try to construct the next layer in the protocol stack using a factory functor with a fallback option. More... | |
| template<typename TFallback , typename TFactory , typename... Args> | |
| Layer * | tryConstructNextLayerFromFactoryWithFallback (TFactory factoryFn, uint8_t *data, size_t dataLen, Packet *packet, Args &&... extraArgs) |
| Try to construct the next layer in the protocol stack using a factory functor with a fallback option. More... | |
Static Protected Member Functions inherited from pcpp::Layer | |
| template<typename T > | |
| static bool | canReinterpretAs (const uint8_t *data, size_t dataLen) |
| Check if the data is large enough to reinterpret as a type. More... | |
Base class for the long-header packet forms that carry cryptographic handshake data and a Length field (Initial, 0-RTT and Handshake). Adds parsing of the QUIC variable-length integer ("varint") encoding (RFC 9000 Section 16) used for the Length field and, in QuicV1InitialLayer, the Token Length field as well
|
overridevirtual |
Implements pcpp::Layer.
| uint64_t pcpp::QuicV1EstablishmentLayer::getLength | ( | ) | const |
| ProtectedPayload pcpp::QuicV1EstablishmentLayer::getProtectedPayload | ( | ) | const |
Get the protected portion of the QUIC packet. The returned data points directly into the packet buffer and is not copied. This includes the Packet Number and the protected payload (including the AEAD authentication tag).