|
@@ -134,56 +134,56 @@ typedef struct Icmpcb6
|
|
|
|
|
|
char *icmpnames6[Maxtype6+1] =
|
|
|
{
|
|
|
-[EchoReply] "EchoReply",
|
|
|
-[UnreachableV6] "UnreachableV6",
|
|
|
-[PacketTooBigV6] "PacketTooBigV6",
|
|
|
-[TimeExceedV6] "TimeExceedV6",
|
|
|
-[SrcQuench] "SrcQuench",
|
|
|
-[Redirect] "Redirect",
|
|
|
-[EchoRequest] "EchoRequest",
|
|
|
-[TimeExceed] "TimeExceed",
|
|
|
-[InParmProblem] "InParmProblem",
|
|
|
-[Timestamp] "Timestamp",
|
|
|
-[TimestampReply] "TimestampReply",
|
|
|
-[InfoRequest] "InfoRequest",
|
|
|
-[InfoReply] "InfoReply",
|
|
|
-[AddrMaskRequest] "AddrMaskRequest",
|
|
|
-[AddrMaskReply] "AddrMaskReply",
|
|
|
-[EchoRequestV6] "EchoRequestV6",
|
|
|
-[EchoReplyV6] "EchoReplyV6",
|
|
|
-[RouterSolicit] "RouterSolicit",
|
|
|
-[RouterAdvert] "RouterAdvert",
|
|
|
-[NbrSolicit] "NbrSolicit",
|
|
|
-[NbrAdvert] "NbrAdvert",
|
|
|
-[RedirectV6] "RedirectV6",
|
|
|
+[EchoReply] = "EchoReply",
|
|
|
+[UnreachableV6] = "UnreachableV6",
|
|
|
+[PacketTooBigV6] = "PacketTooBigV6",
|
|
|
+[TimeExceedV6] = "TimeExceedV6",
|
|
|
+[SrcQuench] = "SrcQuench",
|
|
|
+[Redirect] = "Redirect",
|
|
|
+[EchoRequest] = "EchoRequest",
|
|
|
+[TimeExceed] = "TimeExceed",
|
|
|
+[InParmProblem] = "InParmProblem",
|
|
|
+[Timestamp] = "Timestamp",
|
|
|
+[TimestampReply] = "TimestampReply",
|
|
|
+[InfoRequest] = "InfoRequest",
|
|
|
+[InfoReply] = "InfoReply",
|
|
|
+[AddrMaskRequest] = "AddrMaskRequest",
|
|
|
+[AddrMaskReply] = "AddrMaskReply",
|
|
|
+[EchoRequestV6] = "EchoRequestV6",
|
|
|
+[EchoReplyV6] = "EchoReplyV6",
|
|
|
+[RouterSolicit] = "RouterSolicit",
|
|
|
+[RouterAdvert] = "RouterAdvert",
|
|
|
+[NbrSolicit] = "NbrSolicit",
|
|
|
+[NbrAdvert] = "NbrAdvert",
|
|
|
+[RedirectV6] = "RedirectV6",
|
|
|
};
|
|
|
|
|
|
static char *statnames6[Nstats6] =
|
|
|
{
|
|
|
-[InMsgs6] "InMsgs",
|
|
|
-[InErrors6] "InErrors",
|
|
|
-[OutMsgs6] "OutMsgs",
|
|
|
-[CsumErrs6] "CsumErrs",
|
|
|
-[LenErrs6] "LenErrs",
|
|
|
-[HlenErrs6] "HlenErrs",
|
|
|
-[HoplimErrs6] "HoplimErrs",
|
|
|
-[IcmpCodeErrs6] "IcmpCodeErrs",
|
|
|
-[TargetErrs6] "TargetErrs",
|
|
|
-[OptlenErrs6] "OptlenErrs",
|
|
|
-[AddrmxpErrs6] "AddrmxpErrs",
|
|
|
-[RouterAddrErrs6] "RouterAddrErrs",
|
|
|
+[InMsgs6] = "InMsgs",
|
|
|
+[InErrors6] = "InErrors",
|
|
|
+[OutMsgs6] = "OutMsgs",
|
|
|
+[CsumErrs6] = "CsumErrs",
|
|
|
+[LenErrs6] = "LenErrs",
|
|
|
+[HlenErrs6] = "HlenErrs",
|
|
|
+[HoplimErrs6] = "HoplimErrs",
|
|
|
+[IcmpCodeErrs6] = "IcmpCodeErrs",
|
|
|
+[TargetErrs6] = "TargetErrs",
|
|
|
+[OptlenErrs6] = "OptlenErrs",
|
|
|
+[AddrmxpErrs6] = "AddrmxpErrs",
|
|
|
+[RouterAddrErrs6] = "RouterAddrErrs",
|
|
|
};
|
|
|
|
|
|
static char *unreachcode[] =
|
|
|
{
|
|
|
-[Icmp6_no_route] "no route to destination",
|
|
|
-[Icmp6_ad_prohib] "comm with destination administratively prohibited",
|
|
|
-[Icmp6_out_src_scope] "beyond scope of source address",
|
|
|
-[Icmp6_adr_unreach] "address unreachable",
|
|
|
-[Icmp6_port_unreach] "port unreachable",
|
|
|
-[Icmp6_gress_src_fail] "source address failed ingress/egress policy",
|
|
|
-[Icmp6_rej_route] "reject route to destination",
|
|
|
-[Icmp6_unknown] "icmp unreachable: unknown code",
|
|
|
+[Icmp6_no_route] = "no route to destination",
|
|
|
+[Icmp6_ad_prohib] = "comm with destination administratively prohibited",
|
|
|
+[Icmp6_out_src_scope] = "beyond scope of source address",
|
|
|
+[Icmp6_adr_unreach] = "address unreachable",
|
|
|
+[Icmp6_port_unreach] = "port unreachable",
|
|
|
+[Icmp6_gress_src_fail] = "source address failed ingress/egress policy",
|
|
|
+[Icmp6_rej_route] = "reject route to destination",
|
|
|
+[Icmp6_unknown] = "icmp unreachable: unknown code",
|
|
|
};
|
|
|
|
|
|
static void icmpkick6(void *x, Block *bp);
|