#define HH_SENF_Packets_DefaultBundle_ICMPv6TypePacket_ 1
// Custom includes
-#include "../Packets.hh"
+#include <senf/Packets/Packets.hh>
#include "IPv6Packet.hh"
#include "ICMPv6Packet.hh"
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<ICMPv6EchoRequestType> ICMPv6EchoRequest;
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<ICMPv6EchoReplyType> ICMPv6EchoReply;
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<ICMPv6ErrDestUnreachableType> ICMPv6ErrDestUnreachable;
SENF_PARSER_FIELD ( mtu, UInt32Parser );
/* Code static set to 0 */
- // SENF_PARSER_INIT() {
- // ICMPv6Packet icmpv6 (packet().rfind<ICMPv6Packet>(senf::nothrow));
- // icmpv6->code() = 0;
- // }
+ SENF_PARSER_INIT() {
+ ICMPv6Packet icmpv6 (packet().rfind<ICMPv6Packet>(senf::nothrow));
+ icmpv6->code() = 0;
+ }
SENF_PARSER_FINALIZE ( ICMPv6ErrTooBigParser );
};
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<ICMPv6ErrTooBigType> ICMPv6ErrTooBig;
SENF_PARSER_FIELD ( unused, UInt32Parser );
/* Code 0 - Hop limit exceeded in transit
1 - Fragment reassembly time exceeded */
- void setErrCode(int code){
+ void setErrCode(int code)
+ {
ICMPv6Packet icmpv6 (packet().rfind<ICMPv6Packet>(senf::nothrow));
icmpv6->code() = code;
}
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<ICMPv6ErrTimeExceededType> ICMPv6ErrTimeExceeded;
1 - Unrecognized Next Header type encountered
2 - Unrecognized IPv6 option encountered */
- void setErrCode(int code){
+ void setErrCode(int code)
+ {
ICMPv6Packet icmpv6 (packet().rfind<ICMPv6Packet>(senf::nothrow));
icmpv6->code() = code;
}
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<ICMPv6ErrParamProblemType> ICMPv6ErrParamProblem;
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<MLDv2ListenerQueryType> MLDv2ListenerQuery;
using mixin::nextPacketRange;
using mixin::init;
using mixin::initSize;
+
+ static void dump(packet p, std::ostream & os);
};
typedef ConcretePacket<MLDv2ListenerReportType> MLDv2ListenerReport;