34 #include <tins/macros.h> 35 #include <tins/endianness.h> 36 #include <tins/small_uint.h> 50 class TINS_API PPI :
public PDU {
68 PPI(
const uint8_t* buffer, uint32_t total_sz);
76 uint8_t version()
const {
77 return header_.version;
84 uint8_t flags()
const {
92 uint16_t length()
const {
93 return Endian::le_to_host(header_.length);
100 uint32_t dlt()
const {
101 return Endian::le_to_host(header_.dlt);
109 uint32_t header_size()
const;
115 PDUType pdu_type()
const {
125 return new PPI(*
this);
128 void write_serialization(uint8_t* buffer, uint32_t total_sz);
129 void parse_80211(
const uint8_t* buffer, uint32_t total_sz);
132 uint8_t version, flags;
143 #endif // TINS_HAVE_PCAP std::vector< uint8_t > byte_array
Definition: pdu.h:45
PDUType
Enum which identifies each type of PDU.
Definition: pdu.h:127
The Tins namespace.
Definition: address_range.h:38