Parse an Ethernet MAC address. More...
#include <senf/Packets/DefaultBundle/EthernetPacket.hh>
Public Member Functions | |
MACAddressParser (data_iterator i, state_type s) | |
bool | local () const |
true , if address is locally administered More... | |
bool | multicast () const |
true , if address is a group/multicast address More... | |
bool | broadcast () const |
true , if address is the broadcast address More... | |
bool | null () const |
true , if address is the zero address More... | |
void | hash (boost::uint64_t *, boost::uint16_t const &otherKey=0) const |
Return MAC address as uint64 value as hask key. More... | |
Public Member Functions inherited from senf::ArrayValueParserBase< MACAddressParser, MACAddress > | |
ArrayValueParserBase (data_iterator i, state_type s) | |
value_type | value () const |
void | value (value_type const &v) |
operator value_type () const | |
byte & | operator[] (size_type index) |
byte const & | operator[] (size_type index) const |
MACAddressParser const & | operator= (value_type const &other) |
bool | operator== (MACAddressParser const &other) const |
Public Member Functions inherited from senf::PacketParserBase | |
data_iterator | i () const |
Return beginning of data to parse. More... | |
data_iterator | i (size_type offset) const |
Return iterator offset bytes from the start. More... | |
state_type | state () const |
Return state of this parser. More... | |
PacketData & | data () const |
Access the packets raw data container. More... | |
void | init () const |
Default implementation. More... | |
Additional Inherited Members | |
Public Types inherited from senf::ArrayValueParserBase< MACAddressParser, MACAddress > | |
typedef ArrayValueParserBase< MACAddressParser, MACAddress > | Base |
typedef MACAddress | value_type |
Public Types inherited from senf::PacketParserBase | |
typedef detail::packet::iterator | data_iterator |
Raw data iterator type. More... | |
typedef detail::packet::size_type | size_type |
Unsigned integral type. More... | |
typedef detail::packet::difference_type | difference_type |
Signed integral type. More... | |
typedef detail::packet::byte | byte |
Unsigned 8bit value, the raw value type. More... | |
typedef PacketData * | state_type |
Type of the 'state' parameter. More... | |
typedef PacketParserBase | parser_base_type |
Base type of the next parser. More... | |
Static Public Attributes inherited from senf::ArrayValueParserBase< MACAddressParser, MACAddress > | |
static size_type const | fixed_bytes |
Protected Member Functions inherited from senf::PacketParserBase | |
ParserProtector | protect () const |
PacketParserBase (data_iterator i, state_type s) | |
Standard constructor. More... | |
PacketParserBase (data_iterator i, state_type s, size_type size) | |
Size checking constructor. More... | |
bool | check (size_type size) const |
Check size of data container. More... | |
void | validate (size_type size) const |
Validate size of data container. More... | |
template<class Parser > | |
Parser | parse (data_iterator i) const |
Create sub-parser. More... | |
template<class Parser , class Arg > | |
Parser | parse (Arg const &arg, data_iterator i) const |
Create sub-parser. More... | |
template<class Parser > | |
Parser | parse (size_type n) const |
Create sub-parser. More... | |
template<class Parser , class Arg > | |
Parser | parse (Arg const &arg, size_type n) const |
Create sub-parser. More... | |
void | defaultInit () const |
Default implementation. More... | |
Packet | packet () const |
Get packet this parser is parsing from. More... | |
void | resize (size_type oldSize, size_type newSize) |
Resize data container. More... | |
Parse an Ethernet MAC address.
The ethernet MAC is returned by value as a 6-byte sequence
Definition at line 36 of file EthernetPacket.hh.
|
inline |
Definition at line 39 of file EthernetPacket.hh.
bool senf::MACAddressParser::broadcast | ( | ) | const |
true
, if address is the broadcast address
void senf::MACAddressParser::hash | ( | boost::uint64_t * | , |
boost::uint16_t const & | otherKey = 0 |
||
) | const |
Return MAC address as uint64 value as hask key.
bool senf::MACAddressParser::local | ( | ) | const |
true
, if address is locally administered
bool senf::MACAddressParser::multicast | ( | ) | const |
true
, if address is a group/multicast address
bool senf::MACAddressParser::null | ( | ) | const |
true
, if address is the zero address