18a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#ifndef _IPCONNTRACK_NETLINK_H
28a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define _IPCONNTRACK_NETLINK_H
38a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#include <libnfnetlink/linux_nfnetlink.h>
48a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
58a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#ifdef __cplusplus
68a44513648da0c5f5551f96b329cf56b66f5b303pkanwarextern "C" {
78a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#endif
88a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
98a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum cntl_msg_types {
108a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_NEW,
118a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_GET,
128a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_DELETE,
138a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_GET_CTRZERO,
148a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_GET_STATS_CPU,
158a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_GET_STATS,
168a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_GET_DYING,
178a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_CT_GET_UNCONFIRMED,
188a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
198a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_MAX
208a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
218a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
228a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctnl_exp_msg_types {
238a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_EXP_NEW,
248a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_EXP_GET,
258a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_EXP_DELETE,
268a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_EXP_GET_STATS_CPU,
278a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
288a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	IPCTNL_MSG_EXP_MAX
298a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
308a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
318a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
328a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_type {
338a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_UNSPEC,
348a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TUPLE_ORIG,
358a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TUPLE_REPLY,
368a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATUS,
378a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO,
388a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_HELP,
398a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_SRC,
408a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_NAT	CTA_NAT_SRC	/* backwards compatibility */
418a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TIMEOUT,
428a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_MARK,
438a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_COUNTERS_ORIG,
448a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_COUNTERS_REPLY,
458a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_USE,
468a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_ID,
478a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_DST,
488a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TUPLE_MASTER,
498a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SEQ_ADJ_ORIG,
508a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_SEQ_ADJ_ORIG	= CTA_SEQ_ADJ_ORIG,
518a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SEQ_ADJ_REPLY,
528a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_SEQ_ADJ_REPLY	= CTA_SEQ_ADJ_REPLY,
538a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SECMARK,		/* obsolete */
548a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_ZONE,
558a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SECCTX,
568a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TIMESTAMP,
578a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_MARK_MASK,
588a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_LABELS,
598a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_LABELS_MASK,
608a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_MAX
618a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
628a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_MAX (__CTA_MAX - 1)
638a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
648a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_tuple {
658a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TUPLE_UNSPEC,
668a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TUPLE_IP,
678a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TUPLE_PROTO,
688a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TUPLE_ZONE,
698a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_TUPLE_MAX
708a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
718a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_TUPLE_MAX (__CTA_TUPLE_MAX - 1)
728a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
738a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_ip {
748a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_IP_UNSPEC,
758a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_IP_V4_SRC,
768a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_IP_V4_DST,
778a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_IP_V6_SRC,
788a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_IP_V6_DST,
798a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_IP_MAX
808a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
818a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_IP_MAX (__CTA_IP_MAX - 1)
828a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
838a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_l4proto {
848a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_UNSPEC,
858a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_NUM,
868a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_SRC_PORT,
878a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_DST_PORT,
888a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_ICMP_ID,
898a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_ICMP_TYPE,
908a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_ICMP_CODE,
918a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_ICMPV6_ID,
928a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_ICMPV6_TYPE,
938a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTO_ICMPV6_CODE,
948a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_PROTO_MAX
958a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
968a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_PROTO_MAX (__CTA_PROTO_MAX - 1)
978a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
988a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_protoinfo {
998a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_UNSPEC,
1008a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_TCP,
1018a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_DCCP,
1028a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_SCTP,
1038a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_PROTOINFO_MAX
1048a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1058a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_PROTOINFO_MAX (__CTA_PROTOINFO_MAX - 1)
1068a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1078a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_protoinfo_tcp {
1088a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_TCP_UNSPEC,
1098a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_TCP_STATE,
1108a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_TCP_WSCALE_ORIGINAL,
1118a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_TCP_WSCALE_REPLY,
1128a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_TCP_FLAGS_ORIGINAL,
1138a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_TCP_FLAGS_REPLY,
1148a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_PROTOINFO_TCP_MAX
1158a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1168a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_PROTOINFO_TCP_MAX (__CTA_PROTOINFO_TCP_MAX - 1)
1178a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1188a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_protoinfo_dccp {
1198a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_DCCP_UNSPEC,
1208a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_DCCP_STATE,
1218a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_DCCP_ROLE,
1228a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_DCCP_HANDSHAKE_SEQ,
1238a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_PROTOINFO_DCCP_MAX,
1248a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1258a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_PROTOINFO_DCCP_MAX (__CTA_PROTOINFO_DCCP_MAX - 1)
1268a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1278a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_protoinfo_sctp {
1288a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_SCTP_UNSPEC,
1298a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_SCTP_STATE,
1308a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_SCTP_VTAG_ORIGINAL,
1318a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTOINFO_SCTP_VTAG_REPLY,
1328a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_PROTOINFO_SCTP_MAX
1338a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1348a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_PROTOINFO_SCTP_MAX (__CTA_PROTOINFO_SCTP_MAX - 1)
1358a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1368a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_counters {
1378a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_COUNTERS_UNSPEC,
1388a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_COUNTERS_PACKETS,		/* 64bit counters */
1398a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_COUNTERS_BYTES,		/* 64bit counters */
1408a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_COUNTERS32_PACKETS,		/* old 32bit counters, unused */
1418a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_COUNTERS32_BYTES,		/* old 32bit counters, unused */
1428a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_COUNTERS_MAX
1438a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1448a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_COUNTERS_MAX (__CTA_COUNTERS_MAX - 1)
1458a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1468a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_tstamp {
1478a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TIMESTAMP_UNSPEC,
1488a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TIMESTAMP_START,
1498a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_TIMESTAMP_STOP,
1508a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_TIMESTAMP_MAX
1518a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1528a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_TIMESTAMP_MAX (__CTA_TIMESTAMP_MAX - 1)
1538a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1548a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_nat {
1558a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_UNSPEC,
1568a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_V4_MINIP,
1578a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_NAT_MINIP CTA_NAT_V4_MINIP
1588a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_V4_MAXIP,
1598a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_NAT_MAXIP CTA_NAT_V4_MAXIP
1608a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_PROTO,
1618a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_V6_MINIP,
1628a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_V6_MAXIP,
1638a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_NAT_MAX
1648a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1658a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_NAT_MAX (__CTA_NAT_MAX - 1)
1668a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1678a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_protonat {
1688a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTONAT_UNSPEC,
1698a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTONAT_PORT_MIN,
1708a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_PROTONAT_PORT_MAX,
1718a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_PROTONAT_MAX
1728a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1738a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_PROTONAT_MAX (__CTA_PROTONAT_MAX - 1)
1748a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1758a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_seqadj {
1768a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SEQADJ_UNSPEC,
1778a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SEQADJ_CORRECTION_POS,
1788a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SEQADJ_OFFSET_BEFORE,
1798a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SEQADJ_OFFSET_AFTER,
1808a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_SEQADJ_MAX
1818a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1828a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_SEQADJ_MAX (__CTA_SEQADJ_MAX - 1)
1838a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1848a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_natseq {
1858a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_SEQ_UNSPEC,
1868a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_SEQ_CORRECTION_POS,
1878a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_SEQ_OFFSET_BEFORE,
1888a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_NAT_SEQ_OFFSET_AFTER,
1898a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_NAT_SEQ_MAX
1908a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
1918a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_NAT_SEQ_MAX (__CTA_NAT_SEQ_MAX - 1)
1928a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
1938a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_expect {
1948a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_UNSPEC,
1958a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_MASTER,
1968a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_TUPLE,
1978a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_MASK,
1988a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_TIMEOUT,
1998a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_ID,
2008a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_HELP_NAME,
2018a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_ZONE,
2028a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_FLAGS,
2038a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_CLASS,
2048a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_NAT,
2058a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_FN,
2068a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_EXPECT_MAX
2078a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
2088a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_EXPECT_MAX (__CTA_EXPECT_MAX - 1)
2098a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2108a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_expect_nat {
2118a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_NAT_UNSPEC,
2128a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_NAT_DIR,
2138a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_EXPECT_NAT_TUPLE,
2148a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_EXPECT_NAT_MAX
2158a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
2168a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_EXPECT_NAT_MAX (__CTA_EXPECT_NAT_MAX - 1)
2178a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2188a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_help {
2198a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_HELP_UNSPEC,
2208a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_HELP_NAME,
2218a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_HELP_INFO,
2228a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_HELP_MAX
2238a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
2248a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_HELP_MAX (__CTA_HELP_MAX - 1)
2258a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2268a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_secctx {
2278a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SECCTX_UNSPEC,
2288a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_SECCTX_NAME,
2298a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_SECCTX_MAX
2308a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
2318a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_SECCTX_MAX (__CTA_SECCTX_MAX - 1)
2328a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2338a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_stats_cpu {
2348a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_UNSPEC,
2358a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_SEARCHED,
2368a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_FOUND,
2378a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_NEW,
2388a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_INVALID,
2398a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_IGNORE,
2408a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_DELETE,
2418a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_DELETE_LIST,
2428a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_INSERT,
2438a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_INSERT_FAILED,
2448a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_DROP,
2458a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_EARLY_DROP,
2468a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_ERROR,
2478a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_SEARCH_RESTART,
2488a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_STATS_MAX,
2498a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
2508a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_STATS_MAX (__CTA_STATS_MAX - 1)
2518a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2528a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_stats_global {
2538a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_GLOBAL_UNSPEC,
2548a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_GLOBAL_ENTRIES,
2558a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_STATS_GLOBAL_MAX,
2568a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
2578a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_STATS_GLOBAL_MAX (__CTA_STATS_GLOBAL_MAX - 1)
2588a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2598a44513648da0c5f5551f96b329cf56b66f5b303pkanwarenum ctattr_expect_stats {
2608a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_EXP_UNSPEC,
2618a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_EXP_NEW,
2628a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_EXP_CREATE,
2638a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	CTA_STATS_EXP_DELETE,
2648a44513648da0c5f5551f96b329cf56b66f5b303pkanwar	__CTA_STATS_EXP_MAX,
2658a44513648da0c5f5551f96b329cf56b66f5b303pkanwar};
2668a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#define CTA_STATS_EXP_MAX (__CTA_STATS_EXP_MAX - 1)
2678a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2688a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#ifdef __cplusplus
2698a44513648da0c5f5551f96b329cf56b66f5b303pkanwar}
2708a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#endif
2718a44513648da0c5f5551f96b329cf56b66f5b303pkanwar
2728a44513648da0c5f5551f96b329cf56b66f5b303pkanwar#endif /* _IPCONNTRACK_NETLINK_H */
273