1 #ifndef _XT_TCPUDP_H 2 #define _XT_TCPUDP_H 3 4 #include <linux/types.h> 5 6 /* TCP matching stuff */ 7 struct xt_tcp 8 { 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 { 27 __u16 spts[2]; /* Source port range. */ 28 __u16 dpts[2]; /* Destination port range. */ 29 __u8 invflags; /* Inverse flags */ 30 }; 31 32 /* Values for "invflags" field in struct ipt_udp. */ 33 #define XT_UDP_INV_SRCPT 0x01 /* Invert the sense of source ports. */ 34 #define XT_UDP_INV_DSTPT 0x02 /* Invert the sense of dest ports. */ 35 #define XT_UDP_INV_MASK 0x03 /* All possible flags. */ 36 37 38 #endif 39