xref: /linux/include/uapi/linux/netfilter/xt_ipvs.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _XT_IPVS_H
3 #define _XT_IPVS_H
4 
5 #include <linux/types.h>
6 #include <linux/netfilter.h>
7 
8 enum {
9 	XT_IPVS_IPVS_PROPERTY =	1 << 0, /* all other options imply this one */
10 	XT_IPVS_PROTO =		1 << 1,
11 	XT_IPVS_VADDR =		1 << 2,
12 	XT_IPVS_VPORT =		1 << 3,
13 	XT_IPVS_DIR =		1 << 4,
14 	XT_IPVS_METHOD =	1 << 5,
15 	XT_IPVS_VPORTCTL =	1 << 6,
16 	XT_IPVS_MASK =		(1 << 7) - 1,
17 	XT_IPVS_ONCE_MASK =	XT_IPVS_MASK & ~XT_IPVS_IPVS_PROPERTY
18 };
19 
20 struct xt_ipvs_mtinfo {
21 	union nf_inet_addr	vaddr, vmask;
22 	__be16			vport;
23 	__u8			l4proto;
24 	__u8			fwd_method;
25 	__be16			vportctl;
26 
27 	__u8			invert;
28 	__u8			bitmask;
29 };
30 
31 #endif /* _XT_IPVS_H */
32