xref: /freebsd-src/tests/atf_python/sys/netpfil/ipfw/insn_headers.py (revision 9f44a47fd07924afc035991af15d84e6585dea4f)
1*9f44a47fSAlexander V. Chernikovfrom enum import Enum
2*9f44a47fSAlexander V. Chernikov
3*9f44a47fSAlexander V. Chernikov
4*9f44a47fSAlexander V. Chernikovclass IpFwOpcode(Enum):
5*9f44a47fSAlexander V. Chernikov    O_NOP = 0
6*9f44a47fSAlexander V. Chernikov    O_IP_SRC = 1
7*9f44a47fSAlexander V. Chernikov    O_IP_SRC_MASK = 2
8*9f44a47fSAlexander V. Chernikov    O_IP_SRC_ME = 3
9*9f44a47fSAlexander V. Chernikov    O_IP_SRC_SET = 4
10*9f44a47fSAlexander V. Chernikov    O_IP_DST = 5
11*9f44a47fSAlexander V. Chernikov    O_IP_DST_MASK = 6
12*9f44a47fSAlexander V. Chernikov    O_IP_DST_ME = 7
13*9f44a47fSAlexander V. Chernikov    O_IP_DST_SET = 8
14*9f44a47fSAlexander V. Chernikov    O_IP_SRCPORT = 9
15*9f44a47fSAlexander V. Chernikov    O_IP_DSTPORT = 10
16*9f44a47fSAlexander V. Chernikov    O_PROTO = 11
17*9f44a47fSAlexander V. Chernikov    O_MACADDR2 = 12
18*9f44a47fSAlexander V. Chernikov    O_MAC_TYPE = 13
19*9f44a47fSAlexander V. Chernikov    O_LAYER2 = 14
20*9f44a47fSAlexander V. Chernikov    O_IN = 15
21*9f44a47fSAlexander V. Chernikov    O_FRAG = 16
22*9f44a47fSAlexander V. Chernikov    O_RECV = 17
23*9f44a47fSAlexander V. Chernikov    O_XMIT = 18
24*9f44a47fSAlexander V. Chernikov    O_VIA = 19
25*9f44a47fSAlexander V. Chernikov    O_IPOPT = 20
26*9f44a47fSAlexander V. Chernikov    O_IPLEN = 21
27*9f44a47fSAlexander V. Chernikov    O_IPID = 22
28*9f44a47fSAlexander V. Chernikov    O_IPTOS = 23
29*9f44a47fSAlexander V. Chernikov    O_IPPRECEDENCE = 24
30*9f44a47fSAlexander V. Chernikov    O_IPTTL = 25
31*9f44a47fSAlexander V. Chernikov    O_IPVER = 26
32*9f44a47fSAlexander V. Chernikov    O_UID = 27
33*9f44a47fSAlexander V. Chernikov    O_GID = 28
34*9f44a47fSAlexander V. Chernikov    O_ESTAB = 29
35*9f44a47fSAlexander V. Chernikov    O_TCPFLAGS = 30
36*9f44a47fSAlexander V. Chernikov    O_TCPWIN = 31
37*9f44a47fSAlexander V. Chernikov    O_TCPSEQ = 32
38*9f44a47fSAlexander V. Chernikov    O_TCPACK = 33
39*9f44a47fSAlexander V. Chernikov    O_ICMPTYPE = 34
40*9f44a47fSAlexander V. Chernikov    O_TCPOPTS = 35
41*9f44a47fSAlexander V. Chernikov    O_VERREVPATH = 36
42*9f44a47fSAlexander V. Chernikov    O_VERSRCREACH = 37
43*9f44a47fSAlexander V. Chernikov    O_PROBE_STATE = 38
44*9f44a47fSAlexander V. Chernikov    O_KEEP_STATE = 39
45*9f44a47fSAlexander V. Chernikov    O_LIMIT = 40
46*9f44a47fSAlexander V. Chernikov    O_LIMIT_PARENT = 41
47*9f44a47fSAlexander V. Chernikov    O_LOG = 42
48*9f44a47fSAlexander V. Chernikov    O_PROB = 43
49*9f44a47fSAlexander V. Chernikov    O_CHECK_STATE = 44
50*9f44a47fSAlexander V. Chernikov    O_ACCEPT = 45
51*9f44a47fSAlexander V. Chernikov    O_DENY = 46
52*9f44a47fSAlexander V. Chernikov    O_REJECT = 47
53*9f44a47fSAlexander V. Chernikov    O_COUNT = 48
54*9f44a47fSAlexander V. Chernikov    O_SKIPTO = 49
55*9f44a47fSAlexander V. Chernikov    O_PIPE = 50
56*9f44a47fSAlexander V. Chernikov    O_QUEUE = 51
57*9f44a47fSAlexander V. Chernikov    O_DIVERT = 52
58*9f44a47fSAlexander V. Chernikov    O_TEE = 53
59*9f44a47fSAlexander V. Chernikov    O_FORWARD_IP = 54
60*9f44a47fSAlexander V. Chernikov    O_FORWARD_MAC = 55
61*9f44a47fSAlexander V. Chernikov    O_NAT = 56
62*9f44a47fSAlexander V. Chernikov    O_REASS = 57
63*9f44a47fSAlexander V. Chernikov    O_IPSEC = 58
64*9f44a47fSAlexander V. Chernikov    O_IP_SRC_LOOKUP = 59
65*9f44a47fSAlexander V. Chernikov    O_IP_DST_LOOKUP = 60
66*9f44a47fSAlexander V. Chernikov    O_ANTISPOOF = 61
67*9f44a47fSAlexander V. Chernikov    O_JAIL = 62
68*9f44a47fSAlexander V. Chernikov    O_ALTQ = 63
69*9f44a47fSAlexander V. Chernikov    O_DIVERTED = 64
70*9f44a47fSAlexander V. Chernikov    O_TCPDATALEN = 65
71*9f44a47fSAlexander V. Chernikov    O_IP6_SRC = 66
72*9f44a47fSAlexander V. Chernikov    O_IP6_SRC_ME = 67
73*9f44a47fSAlexander V. Chernikov    O_IP6_SRC_MASK = 68
74*9f44a47fSAlexander V. Chernikov    O_IP6_DST = 69
75*9f44a47fSAlexander V. Chernikov    O_IP6_DST_ME = 70
76*9f44a47fSAlexander V. Chernikov    O_IP6_DST_MASK = 71
77*9f44a47fSAlexander V. Chernikov    O_FLOW6ID = 72
78*9f44a47fSAlexander V. Chernikov    O_ICMP6TYPE = 73
79*9f44a47fSAlexander V. Chernikov    O_EXT_HDR = 74
80*9f44a47fSAlexander V. Chernikov    O_IP6 = 75
81*9f44a47fSAlexander V. Chernikov    O_NETGRAPH = 76
82*9f44a47fSAlexander V. Chernikov    O_NGTEE = 77
83*9f44a47fSAlexander V. Chernikov    O_IP4 = 78
84*9f44a47fSAlexander V. Chernikov    O_UNREACH6 = 79
85*9f44a47fSAlexander V. Chernikov    O_TAG = 80
86*9f44a47fSAlexander V. Chernikov    O_TAGGED = 81
87*9f44a47fSAlexander V. Chernikov    O_SETFIB = 82
88*9f44a47fSAlexander V. Chernikov    O_FIB = 83
89*9f44a47fSAlexander V. Chernikov    O_SOCKARG = 84
90*9f44a47fSAlexander V. Chernikov    O_CALLRETURN = 85
91*9f44a47fSAlexander V. Chernikov    O_FORWARD_IP6 = 86
92*9f44a47fSAlexander V. Chernikov    O_DSCP = 87
93*9f44a47fSAlexander V. Chernikov    O_SETDSCP = 88
94*9f44a47fSAlexander V. Chernikov    O_IP_FLOW_LOOKUP = 89
95*9f44a47fSAlexander V. Chernikov    O_EXTERNAL_ACTION = 90
96*9f44a47fSAlexander V. Chernikov    O_EXTERNAL_INSTANCE = 91
97*9f44a47fSAlexander V. Chernikov    O_EXTERNAL_DATA = 92
98*9f44a47fSAlexander V. Chernikov    O_SKIP_ACTION = 93
99*9f44a47fSAlexander V. Chernikov    O_TCPMSS = 94
100*9f44a47fSAlexander V. Chernikov    O_MAC_SRC_LOOKUP = 95
101*9f44a47fSAlexander V. Chernikov    O_MAC_DST_LOOKUP = 96
102*9f44a47fSAlexander V. Chernikov    O_SETMARK = 97
103*9f44a47fSAlexander V. Chernikov    O_MARK = 98
104*9f44a47fSAlexander V. Chernikov    O_LAST_OPCODE = 99
105*9f44a47fSAlexander V. Chernikov
106*9f44a47fSAlexander V. Chernikov
107*9f44a47fSAlexander V. Chernikovclass Op3CmdType(Enum):
108*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XADD = 86
109*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XDEL = 87
110*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XGETSIZE = 88
111*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XLIST = 89
112*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XDESTROY = 90
113*9f44a47fSAlexander V. Chernikov    IP_FW_TABLES_XLIST = 92
114*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XINFO = 93
115*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XFLUSH = 94
116*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XCREATE = 95
117*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XMODIFY = 96
118*9f44a47fSAlexander V. Chernikov    IP_FW_XGET = 97
119*9f44a47fSAlexander V. Chernikov    IP_FW_XADD = 98
120*9f44a47fSAlexander V. Chernikov    IP_FW_XDEL = 99
121*9f44a47fSAlexander V. Chernikov    IP_FW_XMOVE = 100
122*9f44a47fSAlexander V. Chernikov    IP_FW_XZERO = 101
123*9f44a47fSAlexander V. Chernikov    IP_FW_XRESETLOG = 102
124*9f44a47fSAlexander V. Chernikov    IP_FW_SET_SWAP = 103
125*9f44a47fSAlexander V. Chernikov    IP_FW_SET_MOVE = 104
126*9f44a47fSAlexander V. Chernikov    IP_FW_SET_ENABLE = 105
127*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XFIND = 106
128*9f44a47fSAlexander V. Chernikov    IP_FW_XIFLIST = 107
129*9f44a47fSAlexander V. Chernikov    IP_FW_TABLES_ALIST = 108
130*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_XSWAP = 109
131*9f44a47fSAlexander V. Chernikov    IP_FW_TABLE_VLIST = 110
132*9f44a47fSAlexander V. Chernikov    IP_FW_NAT44_XCONFIG = 111
133*9f44a47fSAlexander V. Chernikov    IP_FW_NAT44_DESTROY = 112
134*9f44a47fSAlexander V. Chernikov    IP_FW_NAT44_XGETCONFIG = 113
135*9f44a47fSAlexander V. Chernikov    IP_FW_NAT44_LIST_NAT = 114
136*9f44a47fSAlexander V. Chernikov    IP_FW_NAT44_XGETLOG = 115
137*9f44a47fSAlexander V. Chernikov    IP_FW_DUMP_SOPTCODES = 116
138*9f44a47fSAlexander V. Chernikov    IP_FW_DUMP_SRVOBJECTS = 117
139*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64STL_CREATE = 130
140*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64STL_DESTROY = 131
141*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64STL_CONFIG = 132
142*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64STL_LIST = 133
143*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64STL_STATS = 134
144*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64STL_RESET_STATS = 135
145*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64LSN_CREATE = 140
146*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64LSN_DESTROY = 141
147*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64LSN_CONFIG = 142
148*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64LSN_LIST = 143
149*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64LSN_STATS = 144
150*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64LSN_LIST_STATES = 145
151*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64LSN_RESET_STATS = 146
152*9f44a47fSAlexander V. Chernikov    IP_FW_NPTV6_CREATE = 150
153*9f44a47fSAlexander V. Chernikov    IP_FW_NPTV6_DESTROY = 151
154*9f44a47fSAlexander V. Chernikov    IP_FW_NPTV6_CONFIG = 152
155*9f44a47fSAlexander V. Chernikov    IP_FW_NPTV6_LIST = 153
156*9f44a47fSAlexander V. Chernikov    IP_FW_NPTV6_STATS = 154
157*9f44a47fSAlexander V. Chernikov    IP_FW_NPTV6_RESET_STATS = 155
158*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64CLAT_CREATE = 160
159*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64CLAT_DESTROY = 161
160*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64CLAT_CONFIG = 162
161*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64CLAT_LIST = 163
162*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64CLAT_STATS = 164
163*9f44a47fSAlexander V. Chernikov    IP_FW_NAT64CLAT_RESET_STATS = 165
164*9f44a47fSAlexander V. Chernikov
165*9f44a47fSAlexander V. Chernikov
166*9f44a47fSAlexander V. Chernikovclass IcmpRejectCode(Enum):
167*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_NET = 0
168*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_HOST = 1
169*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_PROTOCOL = 2
170*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_PORT = 3
171*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_NEEDFRAG = 4
172*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_SRCFAIL = 5
173*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_NET_UNKNOWN = 6
174*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_HOST_UNKNOWN = 7
175*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_ISOLATED = 8
176*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_NET_PROHIB = 9
177*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_HOST_PROHIB = 10
178*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_TOSNET = 11
179*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_TOSHOST = 12
180*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_FILTER_PROHIB = 13
181*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_HOST_PRECEDENCE = 14
182*9f44a47fSAlexander V. Chernikov    ICMP_UNREACH_PRECEDENCE_CUTOFF = 15
183*9f44a47fSAlexander V. Chernikov    ICMP_REJECT_RST = 256
184*9f44a47fSAlexander V. Chernikov    ICMP_REJECT_ABORT = 257
185*9f44a47fSAlexander V. Chernikov
186*9f44a47fSAlexander V. Chernikov
187*9f44a47fSAlexander V. Chernikovclass Icmp6RejectCode(Enum):
188*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_NOROUTE = 0
189*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_ADMIN = 1
190*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_BEYONDSCOPE = 2
191*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_NOTNEIGHBOR = 2
192*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_ADDR = 3
193*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_NOPORT = 4
194*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_POLICY = 5
195*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_REJECT = 6
196*9f44a47fSAlexander V. Chernikov    ICMP6_DST_UNREACH_SRCROUTE = 7
197*9f44a47fSAlexander V. Chernikov    ICMP6_UNREACH_RST = 256
198*9f44a47fSAlexander V. Chernikov    ICMP6_UNREACH_ABORT = 257
199