senf::IPv6PacketParser Struct Reference

Parse an IPv6 packet. More...

#include <senf/Packets/DefaultBundle/IPv6Packet.hh>

Inheritance diagram for senf::IPv6PacketParser:

Public Types

typedef UInt16Parser length_t
 
typedef UInt8Parser nextHeader_t
 
typedef UInt8Parser hopLimit_t
 
typedef INet6AddressParser source_t
 
typedef INet6AddressParser destination_t
 
- 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 PacketDatastate_type
 Type of the 'state' parameter. More...
 
typedef PacketParserBase parser_base_type
 Base type of the next parser. More...
 

Public Member Functions

senf::UIntFieldParser<?,?+4 > version () const
 
senf::UIntFieldParser<?,?+8 > trafficClass () const
 
senf::UIntFieldParser<?,?+20 > flowLabel () const
 
UInt16Parser length () const
 
UInt8Parser nextHeader () const
 
UInt8Parser hopLimit () const
 
INet6AddressParser source () const
 
INet6AddressParser destination () const
 
void init ()
 
- 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...
 
PacketDatadata () const
 Access the packets raw data container. More...
 
void init () const
 Default implementation. More...
 

Additional Inherited Members

- 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...
 

Detailed Description

Parse an IPv6 packet.

IPv6Packet.png
See also
IPv6PacketType
RFC 2460

Definition at line 47 of file IPv6Packet.hh.

Member Typedef Documentation

◆ destination_t

◆ hopLimit_t

Definition at line 57 of file IPv6Packet.hh.

◆ length_t

Definition at line 55 of file IPv6Packet.hh.

◆ nextHeader_t

◆ source_t

Member Function Documentation

◆ destination()

INet6AddressParser senf::IPv6PacketParser::destination ( ) const

◆ flowLabel()

senf::UIntFieldParser<?,?+ 20 > senf::IPv6PacketParser::flowLabel ( ) const

◆ hopLimit()

UInt8Parser senf::IPv6PacketParser::hopLimit ( ) const

◆ init()

void senf::IPv6PacketParser::init ( )
inline

Definition at line 63 of file IPv6Packet.hh.

◆ length()

UInt16Parser senf::IPv6PacketParser::length ( ) const

◆ nextHeader()

UInt8Parser senf::IPv6PacketParser::nextHeader ( ) const

◆ source()

INet6AddressParser senf::IPv6PacketParser::source ( ) const

◆ trafficClass()

senf::UIntFieldParser<?,?+ 8 > senf::IPv6PacketParser::trafficClass ( ) const

◆ version()

senf::UIntFieldParser<?,?+ 4 > senf::IPv6PacketParser::version ( ) const

The documentation for this struct was generated from the following file: