Home | History | Annotate | Download | only in netfilter
      1 #ifndef _NF_CONNTRACK_TUPLE_COMMON_H
      2 #define _NF_CONNTRACK_TUPLE_COMMON_H
      3 
      4 enum ip_conntrack_dir {
      5 	IP_CT_DIR_ORIGINAL,
      6 	IP_CT_DIR_REPLY,
      7 	IP_CT_DIR_MAX
      8 };
      9 
     10 /* The protocol-specific manipulable parts of the tuple: always in
     11  * network order
     12  */
     13 union nf_conntrack_man_proto {
     14 	/* Add other protocols here. */
     15 	__be16 all;
     16 
     17 	struct {
     18 		__be16 port;
     19 	} tcp;
     20 	struct {
     21 		__be16 port;
     22 	} udp;
     23 	struct {
     24 		__be16 id;
     25 	} icmp;
     26 	struct {
     27 		__be16 port;
     28 	} dccp;
     29 	struct {
     30 		__be16 port;
     31 	} sctp;
     32 	struct {
     33 		__be16 key;	/* GRE key is 32bit, PPtP only uses 16bit */
     34 	} gre;
     35 };
     36 
     37 #define CTINFO2DIR(ctinfo) ((ctinfo) >= IP_CT_IS_REPLY ? IP_CT_DIR_REPLY : IP_CT_DIR_ORIGINAL)
     38 
     39 #endif /* _NF_CONNTRACK_TUPLE_COMMON_H */
     40