senf::IPv6RoutingPacketParser Struct Reference

Parse in IPv6 routing extension header. More...

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

Inheritance diagram for senf::IPv6RoutingPacketParser:

Public Types

typedef UInt8Parser nextHeader_t
 
typedef UInt8Parser headerLength_t
 
typedef UInt8Parser routingType_t
 
typedef UInt8Parser segmentsLeft_t
 
typedef UInt32Parser reserved_t
 
typedef senf::VectorParser< INet6AddressParser > hopAddresses_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 PacketData * state_type
 Type of the 'state' parameter. More...
 
typedef PacketParserBase parser_base_type
 Base type of the next parser. More...
 

Public Member Functions

UInt8Parser nextHeader () const
 
UInt8Parser headerLength () const
 
UInt8Parser routingType () const
 
UInt8Parser ::value_type segmentsLeft () const
 
UInt32Parser reserved () const
 
senf::VectorParser< INet6AddressParser > hopAddresses () 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...
 
PacketData & data () const
 Access the packets raw data container. More...
 
void init () const
 Default implementation. More...
 

Protected Member Functions

UInt8Parser segmentsLeft_ () const
 
- 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 in IPv6 routing extension header.

Parser implementing the IPv6 routing Header extension (type 0 only). The fields implemented are:

IPv6RoutingPacket.png
See also
IPv6ExtensionType_Routing
RFC 2460

Definition at line 112 of file IPv6Extensions.hh.

Member Typedef Documentation

◆ headerLength_t

◆ hopAddresses_t

◆ nextHeader_t

◆ reserved_t

◆ routingType_t

◆ segmentsLeft_t

Member Function Documentation

◆ headerLength()

UInt8Parser senf::IPv6RoutingPacketParser::headerLength ( ) const

◆ hopAddresses()

senf::VectorParser< INet6AddressParser > senf::IPv6RoutingPacketParser::hopAddresses ( ) const

◆ init()

void senf::IPv6RoutingPacketParser::init ( )
inline

Definition at line 155 of file IPv6Extensions.hh.

◆ nextHeader()

UInt8Parser senf::IPv6RoutingPacketParser::nextHeader ( ) const

◆ reserved()

UInt32Parser senf::IPv6RoutingPacketParser::reserved ( ) const

◆ routingType()

UInt8Parser senf::IPv6RoutingPacketParser::routingType ( ) const

◆ segmentsLeft()

UInt8Parser ::value_type senf::IPv6RoutingPacketParser::segmentsLeft ( ) const

◆ segmentsLeft_()

UInt8Parser senf::IPv6RoutingPacketParser::segmentsLeft_ ( ) const
protected

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