• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Header file for iptables ipt_ECN target
2  *
3  * (C) 2002 by Harald Welte <laforge@gnumonks.org>
4  *
5  * This software is distributed under GNU GPL v2, 1991
6  *
7  * ipt_ECN.h,v 1.3 2002/05/29 12:17:40 laforge Exp
8 */
9 #ifndef _IPT_ECN_TARGET_H
10 #define _IPT_ECN_TARGET_H
11 
12 #include <linux/types.h>
13 #include <linux/netfilter/xt_DSCP.h>
14 
15 #define IPT_ECN_IP_MASK	(~XT_DSCP_MASK)
16 
17 #define IPT_ECN_OP_SET_IP	0x01	/* set ECN bits of IPv4 header */
18 #define IPT_ECN_OP_SET_ECE	0x10	/* set ECE bit of TCP header */
19 #define IPT_ECN_OP_SET_CWR	0x20	/* set CWR bit of TCP header */
20 
21 #define IPT_ECN_OP_MASK		0xce
22 
23 struct ipt_ECN_info {
24 	__u8 operation;	/* bitset of operations */
25 	__u8 ip_ect;	/* ECT codepoint of IPv4 header, pre-shifted */
26 	union {
27 		struct {
28 			__u8 ece:1, cwr:1; /* TCP ECT bits */
29 		} tcp;
30 	} proto;
31 };
32 
33 #endif /* _IPT_ECN_TARGET_H */
34