X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FDefaultBundle%2FIPv6Packet.hh;h=2ce41a6101c0407a215d8438077d55d5711a5c69;hb=f2f5d59e83863f3b513950173baee1b6da2aee3c;hp=400691854f2ae440b16f07b3ef9fc2e2471458b0;hpb=7baaacae27c02c86ceda5c7ee41d3172d1e23ffa;p=senf.git diff --git a/Packets/DefaultBundle/IPv6Packet.hh b/Packets/DefaultBundle/IPv6Packet.hh index 4006918..2ce41a6 100644 --- a/Packets/DefaultBundle/IPv6Packet.hh +++ b/Packets/DefaultBundle/IPv6Packet.hh @@ -23,8 +23,8 @@ /** \file \brief IPv6Packet public header */ -#ifndef HH_IPv6Packet_ -#define HH_IPv6Packet_ 1 +#ifndef HH_SENF_Packets_DefaultBundle_IPv6Packet_ +#define HH_SENF_Packets_DefaultBundle_IPv6Packet_ 1 // Custom includes #include "../../Socket/Protocols/INet/INet6Address.hh" @@ -59,6 +59,7 @@ namespace senf { /** \brief Parse an IPv6 packet + \image html IPv6Packet.png \see IPv6PacketType \n RFC 2460 */ @@ -91,12 +92,34 @@ namespace senf { \par Fields: \ref IPv6PacketParser + + + + + + + + + + + + + + + + + + + +
0 4 812 16 2024 2831
\ref IPv6PacketParser::version() "Version"\ref IPv6PacketParser::trafficClass() "Traffic Class"\ref IPv6PacketParser::flowLabel() "Flow Label"
\ref IPv6PacketParser::length() "Payload Length"\ref IPv6PacketParser::nextHeader() "Next Header"\ref IPv6PacketParser::hopLimit() "Hop Limit"
+ \ref IPv6PacketParser::source() "Source Address"
+ \ref IPv6PacketParser::destination() "Destination Address"
+ \par Associated registries: \ref IpTypes \par Finalize action: - Set \a length from payload size\n - Set \a nextHeader from type of next packet if found in \ref IpTypes + \copydetails finalize() \ingroup protocolbundle_default */ @@ -106,9 +129,10 @@ namespace senf { { #ifndef DOXYGEN typedef PacketTypeMixin mixin; - typedef ConcretePacket packet; - typedef IPv6PacketParser parser; #endif + typedef ConcretePacket packet; ///< IPv6 packet typedef + typedef IPv6PacketParser parser; ///< typedef to the parser of IPv6 packet + using mixin::nextPacketRange; using mixin::nextPacketType; using mixin::initSize; @@ -117,9 +141,15 @@ namespace senf { static key_t nextPacketKey(packet p) { return p->nextHeader(); } - static void dump(packet p, std::ostream & os); - - static void finalize(packet p); + /** \brief Dump given IPv6Packet in readable form to given output stream */ + static void dump(packet p, std::ostream & os); + + static void finalize(packet p); ///< Finalize packet. + /**< \li set \ref IPv6PacketParser::length() "length" + from payload size + \li set \ref IPv6PacketParser::nextHeader() + "nextHeader" from type of next packet if found + in \ref IpTypes */ }; /** \brief IPv6 packet typedef */