144d362409d5469aed47d19e7908d19bd194493aThomas Graf#ifndef _IPCONNTRACK_NETLINK_H 244d362409d5469aed47d19e7908d19bd194493aThomas Graf#define _IPCONNTRACK_NETLINK_H 344d362409d5469aed47d19e7908d19bd194493aThomas Graf#include <linux/netfilter/nfnetlink.h> 444d362409d5469aed47d19e7908d19bd194493aThomas Graf 544d362409d5469aed47d19e7908d19bd194493aThomas Grafenum cntl_msg_types { 644d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_CT_NEW, 744d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_CT_GET, 844d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_CT_DELETE, 944d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_CT_GET_CTRZERO, 1044d362409d5469aed47d19e7908d19bd194493aThomas Graf 1144d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_MAX 1244d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 1344d362409d5469aed47d19e7908d19bd194493aThomas Graf 1444d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctnl_exp_msg_types { 1544d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_EXP_NEW, 1644d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_EXP_GET, 1744d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_EXP_DELETE, 1844d362409d5469aed47d19e7908d19bd194493aThomas Graf 1944d362409d5469aed47d19e7908d19bd194493aThomas Graf IPCTNL_MSG_EXP_MAX 2044d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 2144d362409d5469aed47d19e7908d19bd194493aThomas Graf 2244d362409d5469aed47d19e7908d19bd194493aThomas Graf 2344d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_type { 2444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_UNSPEC, 2544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_TUPLE_ORIG, 2644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_TUPLE_REPLY, 2744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_STATUS, 2844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO, 2944d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_HELP, 3044d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_NAT_SRC, 3144d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_NAT CTA_NAT_SRC /* backwards compatibility */ 3244d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_TIMEOUT, 3344d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_MARK, 3444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_COUNTERS_ORIG, 3544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_COUNTERS_REPLY, 3644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_USE, 3744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_ID, 3844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_NAT_DST, 3944d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_MAX 4044d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 4144d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_MAX (__CTA_MAX - 1) 4244d362409d5469aed47d19e7908d19bd194493aThomas Graf 4344d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_tuple { 4444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_TUPLE_UNSPEC, 4544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_TUPLE_IP, 4644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_TUPLE_PROTO, 4744d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_TUPLE_MAX 4844d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 4944d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_TUPLE_MAX (__CTA_TUPLE_MAX - 1) 5044d362409d5469aed47d19e7908d19bd194493aThomas Graf 5144d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_ip { 5244d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_IP_UNSPEC, 5344d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_IP_V4_SRC, 5444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_IP_V4_DST, 5544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_IP_V6_SRC, 5644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_IP_V6_DST, 5744d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_IP_MAX 5844d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 5944d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_IP_MAX (__CTA_IP_MAX - 1) 6044d362409d5469aed47d19e7908d19bd194493aThomas Graf 6144d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_l4proto { 6244d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_UNSPEC, 6344d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_NUM, 6444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_SRC_PORT, 6544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_DST_PORT, 6644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_ICMP_ID, 6744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_ICMP_TYPE, 6844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_ICMP_CODE, 6944d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_ICMPV6_ID, 7044d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_ICMPV6_TYPE, 7144d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTO_ICMPV6_CODE, 7244d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_PROTO_MAX 7344d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 7444d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_PROTO_MAX (__CTA_PROTO_MAX - 1) 7544d362409d5469aed47d19e7908d19bd194493aThomas Graf 7644d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_protoinfo { 7744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_UNSPEC, 7844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_TCP, 7944d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_PROTOINFO_MAX 8044d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 8144d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_PROTOINFO_MAX (__CTA_PROTOINFO_MAX - 1) 8244d362409d5469aed47d19e7908d19bd194493aThomas Graf 8344d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_protoinfo_tcp { 8444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_TCP_UNSPEC, 8544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_TCP_STATE, 8644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_TCP_WSCALE_ORIGINAL, 8744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_TCP_WSCALE_REPLY, 8844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_TCP_FLAGS_ORIGINAL, 8944d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTOINFO_TCP_FLAGS_REPLY, 9044d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_PROTOINFO_TCP_MAX 9144d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 9244d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_PROTOINFO_TCP_MAX (__CTA_PROTOINFO_TCP_MAX - 1) 9344d362409d5469aed47d19e7908d19bd194493aThomas Graf 9444d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_counters { 9544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_COUNTERS_UNSPEC, 9644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_COUNTERS_PACKETS, /* old 64bit counters */ 9744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_COUNTERS_BYTES, /* old 64bit counters */ 9844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_COUNTERS32_PACKETS, 9944d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_COUNTERS32_BYTES, 10044d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_COUNTERS_MAX 10144d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 10244d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_COUNTERS_MAX (__CTA_COUNTERS_MAX - 1) 10344d362409d5469aed47d19e7908d19bd194493aThomas Graf 10444d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_nat { 10544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_NAT_UNSPEC, 10644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_NAT_MINIP, 10744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_NAT_MAXIP, 10844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_NAT_PROTO, 10944d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_NAT_MAX 11044d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 11144d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_NAT_MAX (__CTA_NAT_MAX - 1) 11244d362409d5469aed47d19e7908d19bd194493aThomas Graf 11344d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_protonat { 11444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTONAT_UNSPEC, 11544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTONAT_PORT_MIN, 11644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_PROTONAT_PORT_MAX, 11744d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_PROTONAT_MAX 11844d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 11944d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_PROTONAT_MAX (__CTA_PROTONAT_MAX - 1) 12044d362409d5469aed47d19e7908d19bd194493aThomas Graf 12144d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_expect { 12244d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_EXPECT_UNSPEC, 12344d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_EXPECT_MASTER, 12444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_EXPECT_TUPLE, 12544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_EXPECT_MASK, 12644d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_EXPECT_TIMEOUT, 12744d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_EXPECT_ID, 12844d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_EXPECT_HELP_NAME, 12944d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_EXPECT_MAX 13044d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 13144d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_EXPECT_MAX (__CTA_EXPECT_MAX - 1) 13244d362409d5469aed47d19e7908d19bd194493aThomas Graf 13344d362409d5469aed47d19e7908d19bd194493aThomas Grafenum ctattr_help { 13444d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_HELP_UNSPEC, 13544d362409d5469aed47d19e7908d19bd194493aThomas Graf CTA_HELP_NAME, 13644d362409d5469aed47d19e7908d19bd194493aThomas Graf __CTA_HELP_MAX 13744d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 13844d362409d5469aed47d19e7908d19bd194493aThomas Graf#define CTA_HELP_MAX (__CTA_HELP_MAX - 1) 13944d362409d5469aed47d19e7908d19bd194493aThomas Graf 14044d362409d5469aed47d19e7908d19bd194493aThomas Graf#endif /* _IPCONNTRACK_NETLINK_H */ 141