1 #ifndef _IPCONNTRACK_NETLINK_H 2 #define _IPCONNTRACK_NETLINK_H 3 #include <linux/netfilter/nfnetlink.h> 4 5 enum cntl_msg_types { 6 IPCTNL_MSG_CT_NEW, 7 IPCTNL_MSG_CT_GET, 8 IPCTNL_MSG_CT_DELETE, 9 IPCTNL_MSG_CT_GET_CTRZERO, 10 11 IPCTNL_MSG_MAX 12 }; 13 14 enum ctnl_exp_msg_types { 15 IPCTNL_MSG_EXP_NEW, 16 IPCTNL_MSG_EXP_GET, 17 IPCTNL_MSG_EXP_DELETE, 18 19 IPCTNL_MSG_EXP_MAX 20 }; 21 22 23 enum ctattr_type { 24 CTA_UNSPEC, 25 CTA_TUPLE_ORIG, 26 CTA_TUPLE_REPLY, 27 CTA_STATUS, 28 CTA_PROTOINFO, 29 CTA_HELP, 30 CTA_NAT_SRC, 31 #define CTA_NAT CTA_NAT_SRC /* backwards compatibility */ 32 CTA_TIMEOUT, 33 CTA_MARK, 34 CTA_COUNTERS_ORIG, 35 CTA_COUNTERS_REPLY, 36 CTA_USE, 37 CTA_ID, 38 CTA_NAT_DST, 39 CTA_TUPLE_MASTER, 40 __CTA_MAX 41 }; 42 #define CTA_MAX (__CTA_MAX - 1) 43 44 enum ctattr_tuple { 45 CTA_TUPLE_UNSPEC, 46 CTA_TUPLE_IP, 47 CTA_TUPLE_PROTO, 48 __CTA_TUPLE_MAX 49 }; 50 #define CTA_TUPLE_MAX (__CTA_TUPLE_MAX - 1) 51 52 enum ctattr_ip { 53 CTA_IP_UNSPEC, 54 CTA_IP_V4_SRC, 55 CTA_IP_V4_DST, 56 CTA_IP_V6_SRC, 57 CTA_IP_V6_DST, 58 __CTA_IP_MAX 59 }; 60 #define CTA_IP_MAX (__CTA_IP_MAX - 1) 61 62 enum ctattr_l4proto { 63 CTA_PROTO_UNSPEC, 64 CTA_PROTO_NUM, 65 CTA_PROTO_SRC_PORT, 66 CTA_PROTO_DST_PORT, 67 CTA_PROTO_ICMP_ID, 68 CTA_PROTO_ICMP_TYPE, 69 CTA_PROTO_ICMP_CODE, 70 CTA_PROTO_ICMPV6_ID, 71 CTA_PROTO_ICMPV6_TYPE, 72 CTA_PROTO_ICMPV6_CODE, 73 __CTA_PROTO_MAX 74 }; 75 #define CTA_PROTO_MAX (__CTA_PROTO_MAX - 1) 76 77 enum ctattr_protoinfo { 78 CTA_PROTOINFO_UNSPEC, 79 CTA_PROTOINFO_TCP, 80 __CTA_PROTOINFO_MAX 81 }; 82 #define CTA_PROTOINFO_MAX (__CTA_PROTOINFO_MAX - 1) 83 84 enum ctattr_protoinfo_tcp { 85 CTA_PROTOINFO_TCP_UNSPEC, 86 CTA_PROTOINFO_TCP_STATE, 87 CTA_PROTOINFO_TCP_WSCALE_ORIGINAL, 88 CTA_PROTOINFO_TCP_WSCALE_REPLY, 89 CTA_PROTOINFO_TCP_FLAGS_ORIGINAL, 90 CTA_PROTOINFO_TCP_FLAGS_REPLY, 91 __CTA_PROTOINFO_TCP_MAX 92 }; 93 #define CTA_PROTOINFO_TCP_MAX (__CTA_PROTOINFO_TCP_MAX - 1) 94 95 enum ctattr_counters { 96 CTA_COUNTERS_UNSPEC, 97 CTA_COUNTERS_PACKETS, /* old 64bit counters */ 98 CTA_COUNTERS_BYTES, /* old 64bit counters */ 99 CTA_COUNTERS32_PACKETS, 100 CTA_COUNTERS32_BYTES, 101 __CTA_COUNTERS_MAX 102 }; 103 #define CTA_COUNTERS_MAX (__CTA_COUNTERS_MAX - 1) 104 105 enum ctattr_nat { 106 CTA_NAT_UNSPEC, 107 CTA_NAT_MINIP, 108 CTA_NAT_MAXIP, 109 CTA_NAT_PROTO, 110 __CTA_NAT_MAX 111 }; 112 #define CTA_NAT_MAX (__CTA_NAT_MAX - 1) 113 114 enum ctattr_protonat { 115 CTA_PROTONAT_UNSPEC, 116 CTA_PROTONAT_PORT_MIN, 117 CTA_PROTONAT_PORT_MAX, 118 __CTA_PROTONAT_MAX 119 }; 120 #define CTA_PROTONAT_MAX (__CTA_PROTONAT_MAX - 1) 121 122 enum ctattr_expect { 123 CTA_EXPECT_UNSPEC, 124 CTA_EXPECT_MASTER, 125 CTA_EXPECT_TUPLE, 126 CTA_EXPECT_MASK, 127 CTA_EXPECT_TIMEOUT, 128 CTA_EXPECT_ID, 129 CTA_EXPECT_HELP_NAME, 130 __CTA_EXPECT_MAX 131 }; 132 #define CTA_EXPECT_MAX (__CTA_EXPECT_MAX - 1) 133 134 enum ctattr_help { 135 CTA_HELP_UNSPEC, 136 CTA_HELP_NAME, 137 __CTA_HELP_MAX 138 }; 139 #define CTA_HELP_MAX (__CTA_HELP_MAX - 1) 140 141 #endif /* _IPCONNTRACK_NETLINK_H */ 142