ip_set.h revision 655a7c081f83b8351ed5f11a6c6accd9458293a8
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 _UAPI_IP_SET_H 20#define _UAPI_IP_SET_H 21#include <linux/types.h> 22#define IPSET_PROTOCOL 6 23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24#define IPSET_MAXNAMELEN 32 25enum ipset_cmd { 26 IPSET_CMD_NONE, 27 IPSET_CMD_PROTOCOL, 28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 IPSET_CMD_CREATE, 30 IPSET_CMD_DESTROY, 31 IPSET_CMD_FLUSH, 32 IPSET_CMD_RENAME, 33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 IPSET_CMD_SWAP, 35 IPSET_CMD_LIST, 36 IPSET_CMD_SAVE, 37 IPSET_CMD_ADD, 38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 IPSET_CMD_DEL, 40 IPSET_CMD_TEST, 41 IPSET_CMD_HEADER, 42 IPSET_CMD_TYPE, 43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 IPSET_MSG_MAX, 45 IPSET_CMD_RESTORE = IPSET_MSG_MAX, 46 IPSET_CMD_HELP, 47 IPSET_CMD_VERSION, 48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 IPSET_CMD_QUIT, 50 IPSET_CMD_MAX, 51 IPSET_CMD_COMMIT = IPSET_CMD_MAX, 52}; 53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54enum { 55 IPSET_ATTR_UNSPEC, 56 IPSET_ATTR_PROTOCOL, 57 IPSET_ATTR_SETNAME, 58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 IPSET_ATTR_TYPENAME, 60 IPSET_ATTR_SETNAME2 = IPSET_ATTR_TYPENAME, 61 IPSET_ATTR_REVISION, 62 IPSET_ATTR_FAMILY, 63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 IPSET_ATTR_FLAGS, 65 IPSET_ATTR_DATA, 66 IPSET_ATTR_ADT, 67 IPSET_ATTR_LINENO, 68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 IPSET_ATTR_PROTOCOL_MIN, 70 IPSET_ATTR_REVISION_MIN = IPSET_ATTR_PROTOCOL_MIN, 71 __IPSET_ATTR_CMD_MAX, 72}; 73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74#define IPSET_ATTR_CMD_MAX (__IPSET_ATTR_CMD_MAX - 1) 75enum { 76 IPSET_ATTR_IP = IPSET_ATTR_UNSPEC + 1, 77 IPSET_ATTR_IP_FROM = IPSET_ATTR_IP, 78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 IPSET_ATTR_IP_TO, 80 IPSET_ATTR_CIDR, 81 IPSET_ATTR_PORT, 82 IPSET_ATTR_PORT_FROM = IPSET_ATTR_PORT, 83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 IPSET_ATTR_PORT_TO, 85 IPSET_ATTR_TIMEOUT, 86 IPSET_ATTR_PROTO, 87 IPSET_ATTR_CADT_FLAGS, 88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 IPSET_ATTR_CADT_LINENO = IPSET_ATTR_LINENO, 90 IPSET_ATTR_CADT_MAX = 16, 91 IPSET_ATTR_GC, 92 IPSET_ATTR_HASHSIZE, 93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 IPSET_ATTR_MAXELEM, 95 IPSET_ATTR_NETMASK, 96 IPSET_ATTR_PROBES, 97 IPSET_ATTR_RESIZE, 98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 IPSET_ATTR_SIZE, 100 IPSET_ATTR_ELEMENTS, 101 IPSET_ATTR_REFERENCES, 102 IPSET_ATTR_MEMSIZE, 103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 __IPSET_ATTR_CREATE_MAX, 105}; 106#define IPSET_ATTR_CREATE_MAX (__IPSET_ATTR_CREATE_MAX - 1) 107enum { 108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 IPSET_ATTR_ETHER = IPSET_ATTR_CADT_MAX + 1, 110 IPSET_ATTR_NAME, 111 IPSET_ATTR_NAMEREF, 112 IPSET_ATTR_IP2, 113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 IPSET_ATTR_CIDR2, 115 IPSET_ATTR_IP2_TO, 116 IPSET_ATTR_IFACE, 117 IPSET_ATTR_BYTES, 118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 IPSET_ATTR_PACKETS, 120 __IPSET_ATTR_ADT_MAX, 121}; 122#define IPSET_ATTR_ADT_MAX (__IPSET_ATTR_ADT_MAX - 1) 123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124enum { 125 IPSET_ATTR_IPADDR_IPV4 = IPSET_ATTR_UNSPEC + 1, 126 IPSET_ATTR_IPADDR_IPV6, 127 __IPSET_ATTR_IPADDR_MAX, 128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129}; 130#define IPSET_ATTR_IPADDR_MAX (__IPSET_ATTR_IPADDR_MAX - 1) 131enum ipset_errno { 132 IPSET_ERR_PRIVATE = 4096, 133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 IPSET_ERR_PROTOCOL, 135 IPSET_ERR_FIND_TYPE, 136 IPSET_ERR_MAX_SETS, 137 IPSET_ERR_BUSY, 138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 IPSET_ERR_EXIST_SETNAME2, 140 IPSET_ERR_TYPE_MISMATCH, 141 IPSET_ERR_EXIST, 142 IPSET_ERR_INVALID_CIDR, 143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 IPSET_ERR_INVALID_NETMASK, 145 IPSET_ERR_INVALID_FAMILY, 146 IPSET_ERR_TIMEOUT, 147 IPSET_ERR_REFERENCED, 148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 IPSET_ERR_IPADDR_IPV4, 150 IPSET_ERR_IPADDR_IPV6, 151 IPSET_ERR_COUNTER, 152 IPSET_ERR_TYPE_SPECIFIC = 4352, 153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154}; 155enum ipset_cmd_flags { 156 IPSET_FLAG_BIT_EXIST = 0, 157 IPSET_FLAG_EXIST = (1 << IPSET_FLAG_BIT_EXIST), 158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 IPSET_FLAG_BIT_LIST_SETNAME = 1, 160 IPSET_FLAG_LIST_SETNAME = (1 << IPSET_FLAG_BIT_LIST_SETNAME), 161 IPSET_FLAG_BIT_LIST_HEADER = 2, 162 IPSET_FLAG_LIST_HEADER = (1 << IPSET_FLAG_BIT_LIST_HEADER), 163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 IPSET_FLAG_BIT_SKIP_COUNTER_UPDATE = 3, 165 IPSET_FLAG_SKIP_COUNTER_UPDATE = 166 (1 << IPSET_FLAG_BIT_SKIP_COUNTER_UPDATE), 167 IPSET_FLAG_BIT_SKIP_SUBCOUNTER_UPDATE = 4, 168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169 IPSET_FLAG_SKIP_SUBCOUNTER_UPDATE = 170 (1 << IPSET_FLAG_BIT_SKIP_SUBCOUNTER_UPDATE), 171 IPSET_FLAG_BIT_MATCH_COUNTERS = 5, 172 IPSET_FLAG_MATCH_COUNTERS = (1 << IPSET_FLAG_BIT_MATCH_COUNTERS), 173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 IPSET_FLAG_BIT_RETURN_NOMATCH = 7, 175 IPSET_FLAG_RETURN_NOMATCH = (1 << IPSET_FLAG_BIT_RETURN_NOMATCH), 176 IPSET_FLAG_CMD_MAX = 15, 177}; 178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179enum ipset_cadt_flags { 180 IPSET_FLAG_BIT_BEFORE = 0, 181 IPSET_FLAG_BEFORE = (1 << IPSET_FLAG_BIT_BEFORE), 182 IPSET_FLAG_BIT_PHYSDEV = 1, 183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184 IPSET_FLAG_PHYSDEV = (1 << IPSET_FLAG_BIT_PHYSDEV), 185 IPSET_FLAG_BIT_NOMATCH = 2, 186 IPSET_FLAG_NOMATCH = (1 << IPSET_FLAG_BIT_NOMATCH), 187 IPSET_FLAG_BIT_WITH_COUNTERS = 3, 188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189 IPSET_FLAG_WITH_COUNTERS = (1 << IPSET_FLAG_BIT_WITH_COUNTERS), 190 IPSET_FLAG_CADT_MAX = 15, 191}; 192enum ipset_adt { 193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194 IPSET_ADD, 195 IPSET_DEL, 196 IPSET_TEST, 197 IPSET_ADT_MAX, 198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199 IPSET_CREATE = IPSET_ADT_MAX, 200 IPSET_CADT_MAX, 201}; 202typedef __u16 ip_set_id_t; 203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204#define IPSET_INVALID_ID 65535 205enum ip_set_dim { 206 IPSET_DIM_ZERO = 0, 207 IPSET_DIM_ONE, 208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209 IPSET_DIM_TWO, 210 IPSET_DIM_THREE, 211 IPSET_DIM_MAX = 6, 212 IPSET_BIT_RETURN_NOMATCH = 7, 213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214}; 215enum ip_set_kopt { 216 IPSET_INV_MATCH = (1 << IPSET_DIM_ZERO), 217 IPSET_DIM_ONE_SRC = (1 << IPSET_DIM_ONE), 218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219 IPSET_DIM_TWO_SRC = (1 << IPSET_DIM_TWO), 220 IPSET_DIM_THREE_SRC = (1 << IPSET_DIM_THREE), 221 IPSET_RETURN_NOMATCH = (1 << IPSET_BIT_RETURN_NOMATCH), 222}; 223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224enum { 225 IPSET_COUNTER_NONE = 0, 226 IPSET_COUNTER_EQ, 227 IPSET_COUNTER_NE, 228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229 IPSET_COUNTER_LT, 230 IPSET_COUNTER_GT, 231}; 232struct ip_set_counter_match { 233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 234 __u8 op; 235 __u64 value; 236}; 237#define SO_IP_SET 83 238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 239union ip_set_name_index { 240 char name[IPSET_MAXNAMELEN]; 241 ip_set_id_t index; 242}; 243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244#define IP_SET_OP_GET_BYNAME 0x00000006 245struct ip_set_req_get_set { 246 unsigned int op; 247 unsigned int version; 248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 249 union ip_set_name_index set; 250}; 251#define IP_SET_OP_GET_BYINDEX 0x00000007 252#define IP_SET_OP_VERSION 0x00000100 253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254struct ip_set_req_version { 255 unsigned int op; 256 unsigned int version; 257}; 258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 259#endif 260