Blame include/linux/netfilter/nf_conntrack_tuple_common.h

Packit c5a612
#ifndef _NF_CONNTRACK_TUPLE_COMMON_H
Packit c5a612
#define _NF_CONNTRACK_TUPLE_COMMON_H
Packit c5a612
Packit c5a612
#include <linux/types.h>
Packit c5a612
Packit c5a612
enum ip_conntrack_dir {
Packit c5a612
	IP_CT_DIR_ORIGINAL,
Packit c5a612
	IP_CT_DIR_REPLY,
Packit c5a612
	IP_CT_DIR_MAX
Packit c5a612
};
Packit c5a612
Packit c5a612
/* The protocol-specific manipulable parts of the tuple: always in
Packit c5a612
 * network order
Packit c5a612
 */
Packit c5a612
union nf_conntrack_man_proto {
Packit c5a612
	/* Add other protocols here. */
Packit c5a612
	__be16 all;
Packit c5a612
Packit c5a612
	struct {
Packit c5a612
		__be16 port;
Packit c5a612
	} tcp;
Packit c5a612
	struct {
Packit c5a612
		__be16 port;
Packit c5a612
	} udp;
Packit c5a612
	struct {
Packit c5a612
		__be16 id;
Packit c5a612
	} icmp;
Packit c5a612
	struct {
Packit c5a612
		__be16 port;
Packit c5a612
	} dccp;
Packit c5a612
	struct {
Packit c5a612
		__be16 port;
Packit c5a612
	} sctp;
Packit c5a612
	struct {
Packit c5a612
		__be16 key;	/* GRE key is 32bit, PPtP only uses 16bit */
Packit c5a612
	} gre;
Packit c5a612
};
Packit c5a612
Packit c5a612
#define CTINFO2DIR(ctinfo) ((ctinfo) >= IP_CT_IS_REPLY ? IP_CT_DIR_REPLY : IP_CT_DIR_ORIGINAL)
Packit c5a612
Packit c5a612
#endif /* _NF_CONNTRACK_TUPLE_COMMON_H */