PcapPlusPlus  21.05+
pcpp::TcpOption Class Reference

#include <TcpLayer.h>

Inheritance diagram for pcpp::TcpOption:
pcpp::TLVRecord< uint8_t, uint8_t >

Public Member Functions

 TcpOption (uint8_t *optionRawData)
 ~TcpOption ()
TcpOptionType getTcpOptionType () const
size_t getTotalSize () const
size_t getDataSize () const
- Public Member Functions inherited from pcpp::TLVRecord< uint8_t, uint8_t >
 TLVRecord (uint8_t *recordRawData)
 TLVRecord (const TLVRecord &other)
virtual ~TLVRecord ()
void assign (uint8_t *recordRawData)
TLVRecordoperator= (const TLVRecord &other)
bool operator== (const TLVRecord &rhs) const
bool operator!= (const TLVRecord &rhs) const
uint8_t getType () const
uint8_t * getValue () const
bool isNull () const
bool isNotNull () const
uint8_t * getRecordBasePtr () const
void purgeRecordData ()
getValueAs (size_t offset=0) const
bool setValue (T newValue, int valueOffset=0)

Detailed Description

A wrapper class for TCP options. This class does not create or modify TCP option records, but rather serves as a wrapper and provides useful methods for retrieving data from them

Constructor & Destructor Documentation

◆ TcpOption()

pcpp::TcpOption::TcpOption ( uint8_t *  optionRawData)

A c'tor for this class that gets a pointer to the option raw data (byte array)

[in]optionRawDataA pointer to the TCP option raw data

◆ ~TcpOption()

pcpp::TcpOption::~TcpOption ( )

A d'tor for this class, currently does nothing

Member Function Documentation

◆ getDataSize()

size_t pcpp::TcpOption::getDataSize ( ) const
The size of the record value (meaning the size of the 'V' part in TLV)

Implements pcpp::TLVRecord< uint8_t, uint8_t >.

◆ getTcpOptionType()

TcpOptionType pcpp::TcpOption::getTcpOptionType ( ) const
TCP option type casted as pcpp::TcpOptionType enum. If the data is null a value of TCPOPT_Unknown is returned

◆ getTotalSize()

size_t pcpp::TcpOption::getTotalSize ( ) const
The total size of the TLV record (in bytes)

Implements pcpp::TLVRecord< uint8_t, uint8_t >.