PcapPlusPlus  Next
pcpp::IPReassembly::IPv6PacketKey Class Reference

#include <IPReassembly.h>

Inheritance diagram for pcpp::IPReassembly::IPv6PacketKey:
pcpp::IPReassembly::PacketKey

Public Member Functions

 IPv6PacketKey ()
 
 IPv6PacketKey (uint32_t fragmentID, IPv6Address srcip, IPv6Address dstip)
 
 IPv6PacketKey (const IPv6PacketKey &other)
 
IPv6PacketKeyoperator= (const IPv6PacketKey &other)
 
uint32_t getFragmentID () const
 
IPv6Address getSrcIP () const
 
IPv6Address getDstIP () const
 
void setFragmentID (uint32_t fragID)
 
void setSrcIP (const IPv6Address &srcIP)
 
void setDstIP (const IPv6Address &dstIP)
 
uint32_t getHashValue () const override
 
ProtocolType getProtocolType () const override
 
PacketKeyclone () const override
 
- Public Member Functions inherited from pcpp::IPReassembly::PacketKey
virtual ~PacketKey ()=default
 

Detailed Description

Represents a key that can uniquely identify IPv6 fragment packets. The key comprises of source IPv6 address, dest IPv6 address and fragment ID (which resides in the IPv6 fragmentation extension)

Constructor & Destructor Documentation

◆ IPv6PacketKey() [1/3]

pcpp::IPReassembly::IPv6PacketKey::IPv6PacketKey ( )
inline

A default c'tor which zeros all members

◆ IPv6PacketKey() [2/3]

pcpp::IPReassembly::IPv6PacketKey::IPv6PacketKey ( uint32_t  fragmentID,
IPv6Address  srcip,
IPv6Address  dstip 
)
inline

A c'tor that sets values in each one of the members

Parameters
[in]fragmentIDFragment ID value
[in]srcipSource IPv6 address
[in]dstipDest IPv6 address

◆ IPv6PacketKey() [3/3]

pcpp::IPReassembly::IPv6PacketKey::IPv6PacketKey ( const IPv6PacketKey other)
inline

A copy c'tor for this class

Parameters
[in]otherThe instance to copy from

Member Function Documentation

◆ clone()

PacketKey* pcpp::IPReassembly::IPv6PacketKey::clone ( ) const
inlineoverridevirtual
Returns
A pointer to a new instance which is a clone of the current instance

Implements pcpp::IPReassembly::PacketKey.

◆ getDstIP()

IPv6Address pcpp::IPReassembly::IPv6PacketKey::getDstIP ( ) const
inline
Returns
Dest IP address

◆ getFragmentID()

uint32_t pcpp::IPReassembly::IPv6PacketKey::getFragmentID ( ) const
inline
Returns
Fragment ID value

◆ getHashValue()

uint32_t pcpp::IPReassembly::IPv6PacketKey::getHashValue ( ) const
overridevirtual
Returns
A 4-byte hash value of the packet key

Implements pcpp::IPReassembly::PacketKey.

◆ getProtocolType()

ProtocolType pcpp::IPReassembly::IPv6PacketKey::getProtocolType ( ) const
inlineoverridevirtual
Returns
pcpp::IPv6 protocol

Implements pcpp::IPReassembly::PacketKey.

◆ getSrcIP()

IPv6Address pcpp::IPReassembly::IPv6PacketKey::getSrcIP ( ) const
inline
Returns
Source IP address

◆ operator=()

IPv6PacketKey& pcpp::IPReassembly::IPv6PacketKey::operator= ( const IPv6PacketKey other)
inline

Assignment operator for this class

Parameters
[in]otherThe instance to assign from

◆ setDstIP()

void pcpp::IPReassembly::IPv6PacketKey::setDstIP ( const IPv6Address dstIP)
inline

Set dest IPv6 address

Parameters
[in]dstIPDest IP to set

◆ setFragmentID()

void pcpp::IPReassembly::IPv6PacketKey::setFragmentID ( uint32_t  fragID)
inline

Set fragment ID

Parameters
[in]fragIDFragment ID value to set

◆ setSrcIP()

void pcpp::IPReassembly::IPv6PacketKey::setSrcIP ( const IPv6Address srcIP)
inline

Set source IPv6 address

Parameters
[in]srcIPSource IP to set