2 * Copyright (C) 2012 by Darren Reed.
4 * See the IPFILTER.LICENCE file for details on licencing.
11 # undef ICMP6_ECHO_REQUEST
12 # define ICMP6_ECHO_REQUEST 0
13 # undef ICMP6_ECHO_REPLY
14 # define ICMP6_ECHO_REPLY 0
15 # undef ICMP6_NI_QUERY
16 # define ICMP6_NI_QUERY 0
17 # undef ICMP6_NI_REPLY
18 # define ICMP6_NI_REPLY 0
19 # undef ICMP6_PARAM_PROB
20 # define ICMP6_PARAM_PROB 0
21 # undef ND_ROUTER_ADVERT
22 # define ND_ROUTER_ADVERT 0
23 # undef ND_ROUTER_SOLICIT
24 # define ND_ROUTER_SOLICIT 0
25 # undef ICMP6_TIME_EXCEEDED
26 # define ICMP6_TIME_EXCEEDED 0
27 # undef ICMP6_DST_UNREACH
28 # define ICMP6_DST_UNREACH 0
29 # undef ICMP6_PACKET_TOO_BIG
30 # define ICMP6_PACKET_TOO_BIG 0
31 # undef MLD_LISTENER_QUERY
32 # define MLD_LISTENER_QUERY 0
33 # undef MLD_LISTENER_REPORT
34 # define MLD_LISTENER_REPORT 0
35 # undef MLD_LISTENER_DONE
36 # define MLD_LISTENER_DONE 0
37 # undef ICMP6_MEMBERSHIP_QUERY
38 # define ICMP6_MEMBERSHIP_QUERY 0
39 # undef ICMP6_MEMBERSHIP_REPORT
40 # define ICMP6_MEMBERSHIP_REPORT 0
41 # undef ICMP6_MEMBERSHIP_REDUCTION
42 # define ICMP6_MEMBERSHIP_REDUCTION 0
43 # undef ND_NEIGHBOR_ADVERT
44 # define ND_NEIGHBOR_ADVERT 0
45 # undef ND_NEIGHBOR_SOLICIT
46 # define ND_NEIGHBOR_SOLICIT 0
47 # undef ICMP6_ROUTER_RENUMBERING
48 # define ICMP6_ROUTER_RENUMBERING 0
49 # undef ICMP6_WRUREQUEST
50 # define ICMP6_WRUREQUEST 0
51 # undef ICMP6_WRUREPLY
52 # define ICMP6_WRUREPLY 0
53 # undef ICMP6_FQDN_QUERY
54 # define ICMP6_FQDN_QUERY 0
55 # undef ICMP6_FQDN_REPLY
56 # define ICMP6_FQDN_REPLY 0
58 # if !defined(MLD_LISTENER_QUERY)
59 # define MLD_LISTENER_QUERY 130
61 # if !defined(MLD_LISTENER_REPORT)
62 # define MLD_LISTENER_REPORT 131
64 # if !defined(MLD_LISTENER_DONE)
65 # define MLD_LISTENER_DONE 132
67 # if defined(MLD_LISTENER_REDUCTION) && !defined(MLD_LISTENER_DONE)
68 # define MLD_LISTENER_DONE MLD_LISTENER_REDUCTION
72 icmptype_t icmptypelist[] = {
73 { "echo", ICMP_ECHO, ICMP6_ECHO_REQUEST },
74 { "echorep", ICMP_ECHOREPLY, ICMP6_ECHO_REPLY },
75 { "fqdnquery", -1, ICMP6_FQDN_QUERY },
76 { "fqdnreply", -1, ICMP6_FQDN_REPLY },
77 { "infoqry", -1, ICMP6_NI_QUERY },
78 { "inforeq", ICMP_IREQ, ICMP6_NI_QUERY },
79 { "inforep", ICMP_IREQREPLY, ICMP6_NI_REPLY },
80 { "listendone", -1, MLD_LISTENER_DONE },
81 { "listenqry", -1, MLD_LISTENER_QUERY },
82 { "listenrep", -1, MLD_LISTENER_REPORT },
83 { "maskrep", ICMP_MASKREPLY, -1 },
84 { "maskreq", ICMP_MASKREQ, -1 },
85 { "memberqry", -1, ICMP6_MEMBERSHIP_QUERY },
86 { "memberred", -1, ICMP6_MEMBERSHIP_REDUCTION },
87 { "memberreply",-1, ICMP6_MEMBERSHIP_REPORT },
88 { "neighadvert", -1, ND_NEIGHBOR_ADVERT },
89 { "neighborsol", -1, ND_NEIGHBOR_SOLICIT },
90 { "neighborsolicit", -1, ND_NEIGHBOR_SOLICIT },
91 { "paramprob", ICMP_PARAMPROB, ICMP6_PARAM_PROB },
92 { "redir", ICMP_REDIRECT, ND_REDIRECT },
93 { "renumber", -1, ICMP6_ROUTER_RENUMBERING },
94 { "routerad", ICMP_ROUTERADVERT, ND_ROUTER_ADVERT },
95 { "routeradvert",ICMP_ROUTERADVERT, ND_ROUTER_ADVERT },
96 { "routersol", ICMP_ROUTERSOLICIT, ND_ROUTER_SOLICIT },
97 { "routersolcit",ICMP_ROUTERSOLICIT, ND_ROUTER_SOLICIT },
98 { "squench", ICMP_SOURCEQUENCH, -1 },
99 { "timest", ICMP_TSTAMP, -1 },
100 { "timestrep", ICMP_TSTAMPREPLY, -1 },
101 { "timex", ICMP_TIMXCEED, ICMP6_TIME_EXCEEDED },
102 { "toobig", -1, ICMP6_PACKET_TOO_BIG },
103 { "unreach", ICMP_UNREACH, ICMP6_DST_UNREACH },
104 { "whorep", -1, ICMP6_WRUREPLY },
105 { "whoreq", -1, ICMP6_WRUREQUEST },