PcapPlusPlus  Next
pcpp::VlanFilter Class Reference

#include <PcapFilter.h>

Inheritance diagram for pcpp::VlanFilter:
pcpp::GeneralFilter

Public Member Functions

 VlanFilter (uint16_t vlanId)
 
void parseToString (std::string &result) const override
 
void setVlanID (uint16_t vlanId)
 
- Public Member Functions inherited from pcpp::GeneralFilter
virtual ~GeneralFilter ()=default
 Virtual destructor, frees the bpf program.
 
bool matchPacketWithFilter (RawPacket *rawPacket) const
 
bool matches (RawPacket const &rawPacket) const
 Match a raw packet against the filter. More...
 

Additional Inherited Members

- Protected Member Functions inherited from pcpp::GeneralFilter
bool cacheFilter () const
 Parse the filter and cache the compiled BPF program. More...
 
void invalidateCache () const
 Invalidate the cached BPF program. This method should be called whenever the filter changes.
 

Detailed Description

A class for filtering VLAN tagged packets by VLAN ID. When using this filter only packets tagged with VLAN which has the specific VLAN ID will be received

For deeper understanding of the filter concept please refer to PcapFilter.h

Constructor & Destructor Documentation

◆ VlanFilter()

pcpp::VlanFilter::VlanFilter ( uint16_t  vlanId)
inlineexplicit

A constructor the gets the VLAN ID and creates the filter

Parameters
[in]vlanIdThe VLAN ID to use for the filter

Member Function Documentation

◆ parseToString()

void pcpp::VlanFilter::parseToString ( std::string &  result) const
overridevirtual

A method that parses the class instance into BPF string format

Parameters
[out]resultAn empty string that the parsing will be written into. If the string isn't empty, its content will be overridden

Implements pcpp::GeneralFilter.

◆ setVlanID()

void pcpp::VlanFilter::setVlanID ( uint16_t  vlanId)
inline

Set the VLAN ID of the filter

Parameters
[in]vlanIdThe VLAN ID to use for the filter