Add and use a generic version of devmem_is_allowed()
[linux-2.6-microblaze.git] / include / uapi / linux / netfilter / nfnetlink_conntrack.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _IPCONNTRACK_NETLINK_H
3 #define _IPCONNTRACK_NETLINK_H
4 #include <linux/netfilter/nfnetlink.h>
5
6 enum cntl_msg_types {
7         IPCTNL_MSG_CT_NEW,
8         IPCTNL_MSG_CT_GET,
9         IPCTNL_MSG_CT_DELETE,
10         IPCTNL_MSG_CT_GET_CTRZERO,
11         IPCTNL_MSG_CT_GET_STATS_CPU,
12         IPCTNL_MSG_CT_GET_STATS,
13         IPCTNL_MSG_CT_GET_DYING,
14         IPCTNL_MSG_CT_GET_UNCONFIRMED,
15
16         IPCTNL_MSG_MAX
17 };
18
19 enum ctnl_exp_msg_types {
20         IPCTNL_MSG_EXP_NEW,
21         IPCTNL_MSG_EXP_GET,
22         IPCTNL_MSG_EXP_DELETE,
23         IPCTNL_MSG_EXP_GET_STATS_CPU,
24
25         IPCTNL_MSG_EXP_MAX
26 };
27
28
29 enum ctattr_type {
30         CTA_UNSPEC,
31         CTA_TUPLE_ORIG,
32         CTA_TUPLE_REPLY,
33         CTA_STATUS,
34         CTA_PROTOINFO,
35         CTA_HELP,
36         CTA_NAT_SRC,
37 #define CTA_NAT CTA_NAT_SRC     /* backwards compatibility */
38         CTA_TIMEOUT,
39         CTA_MARK,
40         CTA_COUNTERS_ORIG,
41         CTA_COUNTERS_REPLY,
42         CTA_USE,
43         CTA_ID,
44         CTA_NAT_DST,
45         CTA_TUPLE_MASTER,
46         CTA_SEQ_ADJ_ORIG,
47         CTA_NAT_SEQ_ADJ_ORIG    = CTA_SEQ_ADJ_ORIG,
48         CTA_SEQ_ADJ_REPLY,
49         CTA_NAT_SEQ_ADJ_REPLY   = CTA_SEQ_ADJ_REPLY,
50         CTA_SECMARK,            /* obsolete */
51         CTA_ZONE,
52         CTA_SECCTX,
53         CTA_TIMESTAMP,
54         CTA_MARK_MASK,
55         CTA_LABELS,
56         CTA_LABELS_MASK,
57         CTA_SYNPROXY,
58         CTA_FILTER,
59         __CTA_MAX
60 };
61 #define CTA_MAX (__CTA_MAX - 1)
62
63 enum ctattr_tuple {
64         CTA_TUPLE_UNSPEC,
65         CTA_TUPLE_IP,
66         CTA_TUPLE_PROTO,
67         CTA_TUPLE_ZONE,
68         __CTA_TUPLE_MAX
69 };
70 #define CTA_TUPLE_MAX (__CTA_TUPLE_MAX - 1)
71
72 enum ctattr_ip {
73         CTA_IP_UNSPEC,
74         CTA_IP_V4_SRC,
75         CTA_IP_V4_DST,
76         CTA_IP_V6_SRC,
77         CTA_IP_V6_DST,
78         __CTA_IP_MAX
79 };
80 #define CTA_IP_MAX (__CTA_IP_MAX - 1)
81
82 enum ctattr_l4proto {
83         CTA_PROTO_UNSPEC,
84         CTA_PROTO_NUM,
85         CTA_PROTO_SRC_PORT,
86         CTA_PROTO_DST_PORT,
87         CTA_PROTO_ICMP_ID,
88         CTA_PROTO_ICMP_TYPE,
89         CTA_PROTO_ICMP_CODE,
90         CTA_PROTO_ICMPV6_ID,
91         CTA_PROTO_ICMPV6_TYPE,
92         CTA_PROTO_ICMPV6_CODE,
93         __CTA_PROTO_MAX
94 };
95 #define CTA_PROTO_MAX (__CTA_PROTO_MAX - 1)
96
97 enum ctattr_protoinfo {
98         CTA_PROTOINFO_UNSPEC,
99         CTA_PROTOINFO_TCP,
100         CTA_PROTOINFO_DCCP,
101         CTA_PROTOINFO_SCTP,
102         __CTA_PROTOINFO_MAX
103 };
104 #define CTA_PROTOINFO_MAX (__CTA_PROTOINFO_MAX - 1)
105
106 enum ctattr_protoinfo_tcp {
107         CTA_PROTOINFO_TCP_UNSPEC,
108         CTA_PROTOINFO_TCP_STATE,
109         CTA_PROTOINFO_TCP_WSCALE_ORIGINAL,
110         CTA_PROTOINFO_TCP_WSCALE_REPLY,
111         CTA_PROTOINFO_TCP_FLAGS_ORIGINAL,
112         CTA_PROTOINFO_TCP_FLAGS_REPLY,
113         __CTA_PROTOINFO_TCP_MAX
114 };
115 #define CTA_PROTOINFO_TCP_MAX (__CTA_PROTOINFO_TCP_MAX - 1)
116
117 enum ctattr_protoinfo_dccp {
118         CTA_PROTOINFO_DCCP_UNSPEC,
119         CTA_PROTOINFO_DCCP_STATE,
120         CTA_PROTOINFO_DCCP_ROLE,
121         CTA_PROTOINFO_DCCP_HANDSHAKE_SEQ,
122         CTA_PROTOINFO_DCCP_PAD,
123         __CTA_PROTOINFO_DCCP_MAX,
124 };
125 #define CTA_PROTOINFO_DCCP_MAX (__CTA_PROTOINFO_DCCP_MAX - 1)
126
127 enum ctattr_protoinfo_sctp {
128         CTA_PROTOINFO_SCTP_UNSPEC,
129         CTA_PROTOINFO_SCTP_STATE,
130         CTA_PROTOINFO_SCTP_VTAG_ORIGINAL,
131         CTA_PROTOINFO_SCTP_VTAG_REPLY,
132         __CTA_PROTOINFO_SCTP_MAX
133 };
134 #define CTA_PROTOINFO_SCTP_MAX (__CTA_PROTOINFO_SCTP_MAX - 1)
135
136 enum ctattr_counters {
137         CTA_COUNTERS_UNSPEC,
138         CTA_COUNTERS_PACKETS,           /* 64bit counters */
139         CTA_COUNTERS_BYTES,             /* 64bit counters */
140         CTA_COUNTERS32_PACKETS,         /* old 32bit counters, unused */
141         CTA_COUNTERS32_BYTES,           /* old 32bit counters, unused */
142         CTA_COUNTERS_PAD,
143         __CTA_COUNTERS_MAX
144 };
145 #define CTA_COUNTERS_MAX (__CTA_COUNTERS_MAX - 1)
146
147 enum ctattr_tstamp {
148         CTA_TIMESTAMP_UNSPEC,
149         CTA_TIMESTAMP_START,
150         CTA_TIMESTAMP_STOP,
151         CTA_TIMESTAMP_PAD,
152         __CTA_TIMESTAMP_MAX
153 };
154 #define CTA_TIMESTAMP_MAX (__CTA_TIMESTAMP_MAX - 1)
155
156 enum ctattr_nat {
157         CTA_NAT_UNSPEC,
158         CTA_NAT_V4_MINIP,
159 #define CTA_NAT_MINIP CTA_NAT_V4_MINIP
160         CTA_NAT_V4_MAXIP,
161 #define CTA_NAT_MAXIP CTA_NAT_V4_MAXIP
162         CTA_NAT_PROTO,
163         CTA_NAT_V6_MINIP,
164         CTA_NAT_V6_MAXIP,
165         __CTA_NAT_MAX
166 };
167 #define CTA_NAT_MAX (__CTA_NAT_MAX - 1)
168
169 enum ctattr_protonat {
170         CTA_PROTONAT_UNSPEC,
171         CTA_PROTONAT_PORT_MIN,
172         CTA_PROTONAT_PORT_MAX,
173         __CTA_PROTONAT_MAX
174 };
175 #define CTA_PROTONAT_MAX (__CTA_PROTONAT_MAX - 1)
176
177 enum ctattr_seqadj {
178         CTA_SEQADJ_UNSPEC,
179         CTA_SEQADJ_CORRECTION_POS,
180         CTA_SEQADJ_OFFSET_BEFORE,
181         CTA_SEQADJ_OFFSET_AFTER,
182         __CTA_SEQADJ_MAX
183 };
184 #define CTA_SEQADJ_MAX (__CTA_SEQADJ_MAX - 1)
185
186 enum ctattr_natseq {
187         CTA_NAT_SEQ_UNSPEC,
188         CTA_NAT_SEQ_CORRECTION_POS,
189         CTA_NAT_SEQ_OFFSET_BEFORE,
190         CTA_NAT_SEQ_OFFSET_AFTER,
191         __CTA_NAT_SEQ_MAX
192 };
193 #define CTA_NAT_SEQ_MAX (__CTA_NAT_SEQ_MAX - 1)
194
195 enum ctattr_synproxy {
196         CTA_SYNPROXY_UNSPEC,
197         CTA_SYNPROXY_ISN,
198         CTA_SYNPROXY_ITS,
199         CTA_SYNPROXY_TSOFF,
200         __CTA_SYNPROXY_MAX,
201 };
202 #define CTA_SYNPROXY_MAX (__CTA_SYNPROXY_MAX - 1)
203
204 enum ctattr_expect {
205         CTA_EXPECT_UNSPEC,
206         CTA_EXPECT_MASTER,
207         CTA_EXPECT_TUPLE,
208         CTA_EXPECT_MASK,
209         CTA_EXPECT_TIMEOUT,
210         CTA_EXPECT_ID,
211         CTA_EXPECT_HELP_NAME,
212         CTA_EXPECT_ZONE,
213         CTA_EXPECT_FLAGS,
214         CTA_EXPECT_CLASS,
215         CTA_EXPECT_NAT,
216         CTA_EXPECT_FN,
217         __CTA_EXPECT_MAX
218 };
219 #define CTA_EXPECT_MAX (__CTA_EXPECT_MAX - 1)
220
221 enum ctattr_expect_nat {
222         CTA_EXPECT_NAT_UNSPEC,
223         CTA_EXPECT_NAT_DIR,
224         CTA_EXPECT_NAT_TUPLE,
225         __CTA_EXPECT_NAT_MAX
226 };
227 #define CTA_EXPECT_NAT_MAX (__CTA_EXPECT_NAT_MAX - 1)
228
229 enum ctattr_help {
230         CTA_HELP_UNSPEC,
231         CTA_HELP_NAME,
232         CTA_HELP_INFO,
233         __CTA_HELP_MAX
234 };
235 #define CTA_HELP_MAX (__CTA_HELP_MAX - 1)
236
237 enum ctattr_secctx {
238         CTA_SECCTX_UNSPEC,
239         CTA_SECCTX_NAME,
240         __CTA_SECCTX_MAX
241 };
242 #define CTA_SECCTX_MAX (__CTA_SECCTX_MAX - 1)
243
244 enum ctattr_stats_cpu {
245         CTA_STATS_UNSPEC,
246         CTA_STATS_SEARCHED,     /* no longer used */
247         CTA_STATS_FOUND,
248         CTA_STATS_NEW,          /* no longer used */
249         CTA_STATS_INVALID,
250         CTA_STATS_IGNORE,       /* no longer used */
251         CTA_STATS_DELETE,       /* no longer used */
252         CTA_STATS_DELETE_LIST,  /* no longer used */
253         CTA_STATS_INSERT,
254         CTA_STATS_INSERT_FAILED,
255         CTA_STATS_DROP,
256         CTA_STATS_EARLY_DROP,
257         CTA_STATS_ERROR,
258         CTA_STATS_SEARCH_RESTART,
259         CTA_STATS_CLASH_RESOLVE,
260         __CTA_STATS_MAX,
261 };
262 #define CTA_STATS_MAX (__CTA_STATS_MAX - 1)
263
264 enum ctattr_stats_global {
265         CTA_STATS_GLOBAL_UNSPEC,
266         CTA_STATS_GLOBAL_ENTRIES,
267         CTA_STATS_GLOBAL_MAX_ENTRIES,
268         __CTA_STATS_GLOBAL_MAX,
269 };
270 #define CTA_STATS_GLOBAL_MAX (__CTA_STATS_GLOBAL_MAX - 1)
271
272 enum ctattr_expect_stats {
273         CTA_STATS_EXP_UNSPEC,
274         CTA_STATS_EXP_NEW,
275         CTA_STATS_EXP_CREATE,
276         CTA_STATS_EXP_DELETE,
277         __CTA_STATS_EXP_MAX,
278 };
279 #define CTA_STATS_EXP_MAX (__CTA_STATS_EXP_MAX - 1)
280
281 enum ctattr_filter {
282         CTA_FILTER_UNSPEC,
283         CTA_FILTER_ORIG_FLAGS,
284         CTA_FILTER_REPLY_FLAGS,
285         __CTA_FILTER_MAX
286 };
287 #define CTA_FILTER_MAX (__CTA_FILTER_MAX - 1)
288
289 #endif /* _IPCONNTRACK_NETLINK_H */