X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FDefaultBundle%2FIpV6Extensions.hh;h=a0bd5b0117c347bd68f3034d8dd1ce9bf7686fa2;hb=a4e052fb8832499ef5e3ae4e563ea01b834010c2;hp=79cc42acdd1b597430b13bc4143e0bafd3e018f0;hpb=47368f306a577d1e46df69a7f729bd3893cbe5e7;p=senf.git
diff --git a/Packets/DefaultBundle/IpV6Extensions.hh b/Packets/DefaultBundle/IpV6Extensions.hh
index 79cc42a..a0bd5b0 100644
--- a/Packets/DefaultBundle/IpV6Extensions.hh
+++ b/Packets/DefaultBundle/IpV6Extensions.hh
@@ -32,19 +32,25 @@
namespace senf {
- // See RFC2460
+ /** \brief Parse in IpV6 fragment extension header
+
+ Parser implementing the IpV6 fragment extension. The fields implemented are:
+
+ \see IpV6ExtensionType_Fragment \n
+ RFC 2460
+ */
struct Parse_IpV6Extension_Fragment : public PacketParserBase
{
- SENF_PACKET_PARSER_INIT(Parse_IpV6Extension_Fragment);
-
- ///////////////////////////////////////////////////////////////////////////
-
typedef Parse_UInt8 Parse_8bit;
typedef Parse_UIntField < 0, 13 > Parse_Offset;
typedef Parse_UIntField < 13, 15 > Parse_Reserved;
typedef Parse_Flag < 15 > Parse_More;
typedef Parse_UInt32 Parse_32bit;
+# ifndef DOXYGEN
+
+ SENF_PACKET_PARSER_INIT(Parse_IpV6Extension_Fragment);
+
SENF_PACKET_PARSER_DEFINE_FIXED_FIELDS(
((Field )( nextHeader , Parse_8bit ))
((Field )( reserved1 , Parse_8bit ))
@@ -52,8 +58,32 @@ namespace senf {
((OverlayField)( reserved2 , Parse_Reserved ))
((Field )( moreFragments , Parse_More ))
((Field )( id , Parse_32bit )) );
+
+# else
+
+ Parse_8bit nextHeader();
+ Parse_8bit reserved1();
+ Parse_Offset fragmentOffset();
+ Parse_Reserved reserved2();
+ Parse_More moreFragments();
+ Parse_32bit id();
+
+# endif
};
+ /** \brief IpV6 fragment extension
+
+ \par Packet type (typedef):
+ \ref IpV6Extension_Fragment
+
+ \par Fields:
+ \ref Parse_IpV6Extension_Fragment
+
+ \par Associated registries:
+ \par IpTypes
+
+ \ingroup protocolbundle_default
+ */
struct IpV6ExtensionType_Fragment
: public PacketTypeBase,
public PacketTypeMixin
@@ -73,10 +103,13 @@ namespace senf {
static void dump(packet p, std::ostream & os);
};
+ /** \brief IpV6 fragment extension packet typedef */
typedef IpV6ExtensionType_Fragment::packet IpV6Extension_Fragment;
}
///////////////////////////////hh.e////////////////////////////////////////
+#endif
+#ifndef SENF_PACKETS_DECL_ONLY
//#include "IpV6Extensions.cci"
//#include "IpV6Extensions.ct"
//#include "IpV6Extensions.cti"