Home | History | Annotate | Download | only in netfilter_ipv4
      1 /* Header file for iptables ipt_ECN target
      2  *
      3  * (C) 2002 by Harald Welte <laforge (at) gnumonks.org>
      4  *
      5  * This software is distributed under GNU GPL v2, 1991
      6  *
      7  * Id: 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 #include <linux/netfilter_ipv4/ipt_DSCP.h>
     12 
     13 #define IPT_ECN_IP_MASK	(~IPT_DSCP_MASK)
     14 
     15 #define IPT_ECN_OP_SET_IP	0x01	/* set ECN bits of IPv4 header */
     16 #define IPT_ECN_OP_SET_ECE	0x10	/* set ECE bit of TCP header */
     17 #define IPT_ECN_OP_SET_CWR	0x20	/* set CWR bit of TCP header */
     18 
     19 #define IPT_ECN_OP_MASK		0xce
     20 
     21 struct ipt_ECN_info {
     22 	u_int8_t operation;	/* bitset of operations */
     23 	u_int8_t ip_ect;	/* ECT codepoint of IPv4 header, pre-shifted */
     24 	union {
     25 		struct {
     26 			u_int8_t ece:1, cwr:1; /* TCP ECT bits */
     27 		} tcp;
     28 	} proto;
     29 };
     30 
     31 #endif /* _IPT_ECN_TARGET_H */
     32