1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _XT_TCPUDP_H
3 #define _XT_TCPUDP_H
4 
5 #include <linux/types.h>
6 
7 /* TCP matching stuff */
8 struct xt_tcp {
9 	__u16 spts[2];			/* Source port range. */
10 	__u16 dpts[2];			/* Destination port range. */
11 	__u8 option;			/* TCP Option iff non-zero*/
12 	__u8 flg_mask;			/* TCP flags mask byte */
13 	__u8 flg_cmp;			/* TCP flags compare byte */
14 	__u8 invflags;			/* Inverse flags */
15 };
16 
17 /* Values for "inv" field in struct ipt_tcp. */
18 #define XT_TCP_INV_SRCPT	0x01	/* Invert the sense of source ports. */
19 #define XT_TCP_INV_DSTPT	0x02	/* Invert the sense of dest ports. */
20 #define XT_TCP_INV_FLAGS	0x04	/* Invert the sense of TCP flags. */
21 #define XT_TCP_INV_OPTION	0x08	/* Invert the sense of option test. */
22 #define XT_TCP_INV_MASK		0x0F	/* All possible flags. */
23 
24 /* UDP matching stuff */
25 struct xt_udp {
26 	__u16 spts[2];			/* Source port range. */
27 	__u16 dpts[2];			/* Destination port range. */
28 	__u8 invflags;			/* Inverse flags */
29 };
30 
31 /* Values for "invflags" field in struct ipt_udp. */
32 #define XT_UDP_INV_SRCPT	0x01	/* Invert the sense of source ports. */
33 #define XT_UDP_INV_DSTPT	0x02	/* Invert the sense of dest ports. */
34 #define XT_UDP_INV_MASK	0x03	/* All possible flags. */
35 
36 
37 #endif
38