1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19#ifndef _IPCONNTRACK_NETLINK_H 20#define _IPCONNTRACK_NETLINK_H 21#include <linux/netfilter/nfnetlink.h> 22enum cntl_msg_types { 23 IPCTNL_MSG_CT_NEW, 24 IPCTNL_MSG_CT_GET, 25 IPCTNL_MSG_CT_DELETE, 26 IPCTNL_MSG_CT_GET_CTRZERO, 27 IPCTNL_MSG_CT_GET_STATS_CPU, 28 IPCTNL_MSG_CT_GET_STATS, 29 IPCTNL_MSG_CT_GET_DYING, 30 IPCTNL_MSG_CT_GET_UNCONFIRMED, 31 IPCTNL_MSG_MAX 32}; 33enum ctnl_exp_msg_types { 34 IPCTNL_MSG_EXP_NEW, 35 IPCTNL_MSG_EXP_GET, 36 IPCTNL_MSG_EXP_DELETE, 37 IPCTNL_MSG_EXP_GET_STATS_CPU, 38 IPCTNL_MSG_EXP_MAX 39}; 40enum ctattr_type { 41 CTA_UNSPEC, 42 CTA_TUPLE_ORIG, 43 CTA_TUPLE_REPLY, 44 CTA_STATUS, 45 CTA_PROTOINFO, 46 CTA_HELP, 47 CTA_NAT_SRC, 48#define CTA_NAT CTA_NAT_SRC 49 CTA_TIMEOUT, 50 CTA_MARK, 51 CTA_COUNTERS_ORIG, 52 CTA_COUNTERS_REPLY, 53 CTA_USE, 54 CTA_ID, 55 CTA_NAT_DST, 56 CTA_TUPLE_MASTER, 57 CTA_SEQ_ADJ_ORIG, 58 CTA_NAT_SEQ_ADJ_ORIG = CTA_SEQ_ADJ_ORIG, 59 CTA_SEQ_ADJ_REPLY, 60 CTA_NAT_SEQ_ADJ_REPLY = CTA_SEQ_ADJ_REPLY, 61 CTA_SECMARK, 62 CTA_ZONE, 63 CTA_SECCTX, 64 CTA_TIMESTAMP, 65 CTA_MARK_MASK, 66 CTA_LABELS, 67 CTA_LABELS_MASK, 68 __CTA_MAX 69}; 70#define CTA_MAX (__CTA_MAX - 1) 71enum ctattr_tuple { 72 CTA_TUPLE_UNSPEC, 73 CTA_TUPLE_IP, 74 CTA_TUPLE_PROTO, 75 CTA_TUPLE_ZONE, 76 __CTA_TUPLE_MAX 77}; 78#define CTA_TUPLE_MAX (__CTA_TUPLE_MAX - 1) 79enum ctattr_ip { 80 CTA_IP_UNSPEC, 81 CTA_IP_V4_SRC, 82 CTA_IP_V4_DST, 83 CTA_IP_V6_SRC, 84 CTA_IP_V6_DST, 85 __CTA_IP_MAX 86}; 87#define CTA_IP_MAX (__CTA_IP_MAX - 1) 88enum ctattr_l4proto { 89 CTA_PROTO_UNSPEC, 90 CTA_PROTO_NUM, 91 CTA_PROTO_SRC_PORT, 92 CTA_PROTO_DST_PORT, 93 CTA_PROTO_ICMP_ID, 94 CTA_PROTO_ICMP_TYPE, 95 CTA_PROTO_ICMP_CODE, 96 CTA_PROTO_ICMPV6_ID, 97 CTA_PROTO_ICMPV6_TYPE, 98 CTA_PROTO_ICMPV6_CODE, 99 __CTA_PROTO_MAX 100}; 101#define CTA_PROTO_MAX (__CTA_PROTO_MAX - 1) 102enum ctattr_protoinfo { 103 CTA_PROTOINFO_UNSPEC, 104 CTA_PROTOINFO_TCP, 105 CTA_PROTOINFO_DCCP, 106 CTA_PROTOINFO_SCTP, 107 __CTA_PROTOINFO_MAX 108}; 109#define CTA_PROTOINFO_MAX (__CTA_PROTOINFO_MAX - 1) 110enum ctattr_protoinfo_tcp { 111 CTA_PROTOINFO_TCP_UNSPEC, 112 CTA_PROTOINFO_TCP_STATE, 113 CTA_PROTOINFO_TCP_WSCALE_ORIGINAL, 114 CTA_PROTOINFO_TCP_WSCALE_REPLY, 115 CTA_PROTOINFO_TCP_FLAGS_ORIGINAL, 116 CTA_PROTOINFO_TCP_FLAGS_REPLY, 117 __CTA_PROTOINFO_TCP_MAX 118}; 119#define CTA_PROTOINFO_TCP_MAX (__CTA_PROTOINFO_TCP_MAX - 1) 120enum ctattr_protoinfo_dccp { 121 CTA_PROTOINFO_DCCP_UNSPEC, 122 CTA_PROTOINFO_DCCP_STATE, 123 CTA_PROTOINFO_DCCP_ROLE, 124 CTA_PROTOINFO_DCCP_HANDSHAKE_SEQ, 125 CTA_PROTOINFO_DCCP_PAD, 126 __CTA_PROTOINFO_DCCP_MAX, 127}; 128#define CTA_PROTOINFO_DCCP_MAX (__CTA_PROTOINFO_DCCP_MAX - 1) 129enum ctattr_protoinfo_sctp { 130 CTA_PROTOINFO_SCTP_UNSPEC, 131 CTA_PROTOINFO_SCTP_STATE, 132 CTA_PROTOINFO_SCTP_VTAG_ORIGINAL, 133 CTA_PROTOINFO_SCTP_VTAG_REPLY, 134 __CTA_PROTOINFO_SCTP_MAX 135}; 136#define CTA_PROTOINFO_SCTP_MAX (__CTA_PROTOINFO_SCTP_MAX - 1) 137enum ctattr_counters { 138 CTA_COUNTERS_UNSPEC, 139 CTA_COUNTERS_PACKETS, 140 CTA_COUNTERS_BYTES, 141 CTA_COUNTERS32_PACKETS, 142 CTA_COUNTERS32_BYTES, 143 CTA_COUNTERS_PAD, 144 __CTA_COUNTERS_MAX 145}; 146#define CTA_COUNTERS_MAX (__CTA_COUNTERS_MAX - 1) 147enum ctattr_tstamp { 148 CTA_TIMESTAMP_UNSPEC, 149 CTA_TIMESTAMP_START, 150 CTA_TIMESTAMP_STOP, 151 CTA_TIMESTAMP_PAD, 152 __CTA_TIMESTAMP_MAX 153}; 154#define CTA_TIMESTAMP_MAX (__CTA_TIMESTAMP_MAX - 1) 155enum ctattr_nat { 156 CTA_NAT_UNSPEC, 157 CTA_NAT_V4_MINIP, 158#define CTA_NAT_MINIP CTA_NAT_V4_MINIP 159 CTA_NAT_V4_MAXIP, 160#define CTA_NAT_MAXIP CTA_NAT_V4_MAXIP 161 CTA_NAT_PROTO, 162 CTA_NAT_V6_MINIP, 163 CTA_NAT_V6_MAXIP, 164 __CTA_NAT_MAX 165}; 166#define CTA_NAT_MAX (__CTA_NAT_MAX - 1) 167enum ctattr_protonat { 168 CTA_PROTONAT_UNSPEC, 169 CTA_PROTONAT_PORT_MIN, 170 CTA_PROTONAT_PORT_MAX, 171 __CTA_PROTONAT_MAX 172}; 173#define CTA_PROTONAT_MAX (__CTA_PROTONAT_MAX - 1) 174enum ctattr_seqadj { 175 CTA_SEQADJ_UNSPEC, 176 CTA_SEQADJ_CORRECTION_POS, 177 CTA_SEQADJ_OFFSET_BEFORE, 178 CTA_SEQADJ_OFFSET_AFTER, 179 __CTA_SEQADJ_MAX 180}; 181#define CTA_SEQADJ_MAX (__CTA_SEQADJ_MAX - 1) 182enum ctattr_natseq { 183 CTA_NAT_SEQ_UNSPEC, 184 CTA_NAT_SEQ_CORRECTION_POS, 185 CTA_NAT_SEQ_OFFSET_BEFORE, 186 CTA_NAT_SEQ_OFFSET_AFTER, 187 __CTA_NAT_SEQ_MAX 188}; 189#define CTA_NAT_SEQ_MAX (__CTA_NAT_SEQ_MAX - 1) 190enum ctattr_expect { 191 CTA_EXPECT_UNSPEC, 192 CTA_EXPECT_MASTER, 193 CTA_EXPECT_TUPLE, 194 CTA_EXPECT_MASK, 195 CTA_EXPECT_TIMEOUT, 196 CTA_EXPECT_ID, 197 CTA_EXPECT_HELP_NAME, 198 CTA_EXPECT_ZONE, 199 CTA_EXPECT_FLAGS, 200 CTA_EXPECT_CLASS, 201 CTA_EXPECT_NAT, 202 CTA_EXPECT_FN, 203 __CTA_EXPECT_MAX 204}; 205#define CTA_EXPECT_MAX (__CTA_EXPECT_MAX - 1) 206enum ctattr_expect_nat { 207 CTA_EXPECT_NAT_UNSPEC, 208 CTA_EXPECT_NAT_DIR, 209 CTA_EXPECT_NAT_TUPLE, 210 __CTA_EXPECT_NAT_MAX 211}; 212#define CTA_EXPECT_NAT_MAX (__CTA_EXPECT_NAT_MAX - 1) 213enum ctattr_help { 214 CTA_HELP_UNSPEC, 215 CTA_HELP_NAME, 216 CTA_HELP_INFO, 217 __CTA_HELP_MAX 218}; 219#define CTA_HELP_MAX (__CTA_HELP_MAX - 1) 220enum ctattr_secctx { 221 CTA_SECCTX_UNSPEC, 222 CTA_SECCTX_NAME, 223 __CTA_SECCTX_MAX 224}; 225#define CTA_SECCTX_MAX (__CTA_SECCTX_MAX - 1) 226enum ctattr_stats_cpu { 227 CTA_STATS_UNSPEC, 228 CTA_STATS_SEARCHED, 229 CTA_STATS_FOUND, 230 CTA_STATS_NEW, 231 CTA_STATS_INVALID, 232 CTA_STATS_IGNORE, 233 CTA_STATS_DELETE, 234 CTA_STATS_DELETE_LIST, 235 CTA_STATS_INSERT, 236 CTA_STATS_INSERT_FAILED, 237 CTA_STATS_DROP, 238 CTA_STATS_EARLY_DROP, 239 CTA_STATS_ERROR, 240 CTA_STATS_SEARCH_RESTART, 241 __CTA_STATS_MAX, 242}; 243#define CTA_STATS_MAX (__CTA_STATS_MAX - 1) 244enum ctattr_stats_global { 245 CTA_STATS_GLOBAL_UNSPEC, 246 CTA_STATS_GLOBAL_ENTRIES, 247 __CTA_STATS_GLOBAL_MAX, 248}; 249#define CTA_STATS_GLOBAL_MAX (__CTA_STATS_GLOBAL_MAX - 1) 250enum ctattr_expect_stats { 251 CTA_STATS_EXP_UNSPEC, 252 CTA_STATS_EXP_NEW, 253 CTA_STATS_EXP_CREATE, 254 CTA_STATS_EXP_DELETE, 255 __CTA_STATS_EXP_MAX, 256}; 257#define CTA_STATS_EXP_MAX (__CTA_STATS_EXP_MAX - 1) 258#endif 259