25 static_assert(
sizeof(
tpkthdr) == 4,
"tpkthdr size is not 4 bytes");
38 :
Layer(data, dataLen, prevLayer, packet,
TPKT)
82 static bool isTpktPort(uint16_t portSrc, uint16_t portDst)
84 return portSrc == 102 || portDst == 102;
93 return data && dataSize >=
sizeof(
tpkthdr);
110 return reinterpret_cast<tpkthdr*
>(m_Data);
Definition: TpktLayer.h:30
void setVersion(uint8_t version) const
size_t getHeaderLen() const override
Definition: TpktLayer.h:66
std::string toString() const override
uint8_t getVersion() const
TpktLayer(uint8_t version, uint16_t length)
uint16_t getLength() const
static bool isTpktPort(uint16_t portSrc, uint16_t portDst)
Definition: TpktLayer.h:82
uint8_t getReserved() const
void computeCalculateFields() override
Does nothing for this layer.
Definition: TpktLayer.h:72
TpktLayer(uint8_t *data, size_t dataLen, Layer *prevLayer, Packet *packet)
Definition: TpktLayer.h:37
static bool isDataValid(const uint8_t *data, size_t dataSize)
Definition: TpktLayer.h:91
void parseNextLayer() override
Currently parses the rest of the packet as a COTP protocol or generic payload (PayloadLayer)
void setLength(uint16_t length) const
OsiModelLayer getOsiModelLayer() const override
Definition: TpktLayer.h:98
The main namespace for the PcapPlusPlus lib.
const ProtocolType TPKT
TPKT protocol.
Definition: ProtocolType.h:188
OsiModelLayer
An enum representing OSI model layers.
Definition: ProtocolType.h:225
@ OsiModelTransportLayer
Transport layer (layer 4)
Definition: ProtocolType.h:233
Definition: TpktLayer.h:16
uint8_t version
message version
Definition: TpktLayer.h:18
uint8_t reserved
message reserved
Definition: TpktLayer.h:20
uint16_t length
message length
Definition: TpktLayer.h:22