29 static_assert(
sizeof(
vlan_header) == 4,
"vlan_header size is not 4 bytes");
42 :
Layer(data, dataLen, prevLayer, packet,
VLAN)
51 VlanLayer(
const uint16_t vlanID,
bool cfi, uint8_t priority, uint16_t etherType = 0);
Definition: VlanLayer.h:34
std::string toString() const override
uint16_t getVlanID() const
VlanLayer(const uint16_t vlanID, bool cfi, uint8_t priority, uint16_t etherType=0)
void parseNextLayer() override
uint8_t getPriority() const
VlanLayer(uint8_t *data, size_t dataLen, Layer *prevLayer, Packet *packet)
Definition: VlanLayer.h:41
vlan_header * getVlanHeader() const
Definition: VlanLayer.h:58
void setPriority(uint8_t priority)
OsiModelLayer getOsiModelLayer() const override
Definition: VlanLayer.h:110
size_t getHeaderLen() const override
Definition: VlanLayer.h:100
void computeCalculateFields() override
Calculate the EtherType for known protocols: IPv4, IPv6, ARP, VLAN.
void setVlanID(uint16_t id)
The main namespace for the PcapPlusPlus lib.
OsiModelLayer
An enum representing OSI model layers.
Definition: ProtocolType.h:225
@ OsiModelDataLinkLayer
Data link layer (layer 2)
Definition: ProtocolType.h:229
const ProtocolType VLAN
VLAN protocol.
Definition: ProtocolType.h:53