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 __LINUX_PKT_CLS_H 20 #define __LINUX_PKT_CLS_H 21 #include <linux/types.h> 22 #include <linux/pkt_sched.h> 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 #define _TC_MAKE32(x) ((x)) 25 #define _TC_MAKEMASK1(n) (_TC_MAKE32(1) << _TC_MAKE32(n)) 26 #define _TC_MAKEMASK(v,n) (_TC_MAKE32((_TC_MAKE32(1) << (v)) - 1) << _TC_MAKE32(n)) 27 #define _TC_MAKEVALUE(v,n) (_TC_MAKE32(v) << _TC_MAKE32(n)) 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 #define _TC_GETVALUE(v,n,m) ((_TC_MAKE32(v) & _TC_MAKE32(m)) >> _TC_MAKE32(n)) 30 #define TC_MUNGED _TC_MAKEMASK1(0) 31 #define SET_TC_MUNGED(v) (TC_MUNGED | (v & ~TC_MUNGED)) 32 #define CLR_TC_MUNGED(v) (v & ~TC_MUNGED) 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 #define TC_OK2MUNGE _TC_MAKEMASK1(1) 35 #define SET_TC_OK2MUNGE(v) (TC_OK2MUNGE | (v & ~TC_OK2MUNGE)) 36 #define CLR_TC_OK2MUNGE(v) (v & ~TC_OK2MUNGE) 37 #define S_TC_VERD _TC_MAKE32(2) 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 #define M_TC_VERD _TC_MAKEMASK(4, S_TC_VERD) 40 #define G_TC_VERD(x) _TC_GETVALUE(x, S_TC_VERD, M_TC_VERD) 41 #define V_TC_VERD(x) _TC_MAKEVALUE(x, S_TC_VERD) 42 #define SET_TC_VERD(v,n) ((V_TC_VERD(n)) | (v & ~M_TC_VERD)) 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 #define S_TC_FROM _TC_MAKE32(6) 45 #define M_TC_FROM _TC_MAKEMASK(2, S_TC_FROM) 46 #define G_TC_FROM(x) _TC_GETVALUE(x, S_TC_FROM, M_TC_FROM) 47 #define V_TC_FROM(x) _TC_MAKEVALUE(x, S_TC_FROM) 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 #define SET_TC_FROM(v,n) ((V_TC_FROM(n)) | (v & ~M_TC_FROM)) 50 #define AT_STACK 0x0 51 #define AT_INGRESS 0x1 52 #define AT_EGRESS 0x2 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 #define TC_NCLS _TC_MAKEMASK1(8) 55 #define SET_TC_NCLS(v) (TC_NCLS | (v & ~TC_NCLS)) 56 #define CLR_TC_NCLS(v) (v & ~TC_NCLS) 57 #define S_TC_RTTL _TC_MAKE32(9) 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 #define M_TC_RTTL _TC_MAKEMASK(3, S_TC_RTTL) 60 #define G_TC_RTTL(x) _TC_GETVALUE(x, S_TC_RTTL, M_TC_RTTL) 61 #define V_TC_RTTL(x) _TC_MAKEVALUE(x, S_TC_RTTL) 62 #define SET_TC_RTTL(v,n) ((V_TC_RTTL(n)) | (v & ~M_TC_RTTL)) 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 #define S_TC_AT _TC_MAKE32(12) 65 #define M_TC_AT _TC_MAKEMASK(2, S_TC_AT) 66 #define G_TC_AT(x) _TC_GETVALUE(x, S_TC_AT, M_TC_AT) 67 #define V_TC_AT(x) _TC_MAKEVALUE(x, S_TC_AT) 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 #define SET_TC_AT(v,n) ((V_TC_AT(n)) | (v & ~M_TC_AT)) 70 enum { 71 TCA_ACT_UNSPEC, 72 TCA_ACT_KIND, 73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 TCA_ACT_OPTIONS, 75 TCA_ACT_INDEX, 76 TCA_ACT_STATS, 77 __TCA_ACT_MAX 78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 }; 80 #define TCA_ACT_MAX __TCA_ACT_MAX 81 #define TCA_OLD_COMPAT (TCA_ACT_MAX + 1) 82 #define TCA_ACT_MAX_PRIO 32 83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 #define TCA_ACT_BIND 1 85 #define TCA_ACT_NOBIND 0 86 #define TCA_ACT_UNBIND 1 87 #define TCA_ACT_NOUNBIND 0 88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 #define TCA_ACT_REPLACE 1 90 #define TCA_ACT_NOREPLACE 0 91 #define MAX_REC_LOOP 4 92 #define MAX_RED_LOOP 4 93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 #define TC_ACT_UNSPEC (- 1) 95 #define TC_ACT_OK 0 96 #define TC_ACT_RECLASSIFY 1 97 #define TC_ACT_SHOT 2 98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 #define TC_ACT_PIPE 3 100 #define TC_ACT_STOLEN 4 101 #define TC_ACT_QUEUED 5 102 #define TC_ACT_REPEAT 6 103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 #define TC_ACT_JUMP 0x10000000 105 enum { 106 TCA_ID_UNSPEC = 0, 107 TCA_ID_POLICE = 1, 108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 __TCA_ID_MAX = 255 110 }; 111 #define TCA_ID_MAX __TCA_ID_MAX 112 struct tc_police { 113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 __u32 index; 115 int action; 116 #define TC_POLICE_UNSPEC TC_ACT_UNSPEC 117 #define TC_POLICE_OK TC_ACT_OK 118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 #define TC_POLICE_RECLASSIFY TC_ACT_RECLASSIFY 120 #define TC_POLICE_SHOT TC_ACT_SHOT 121 #define TC_POLICE_PIPE TC_ACT_PIPE 122 __u32 limit; 123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124 __u32 burst; 125 __u32 mtu; 126 struct tc_ratespec rate; 127 struct tc_ratespec peakrate; 128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129 int refcnt; 130 int bindcnt; 131 __u32 capab; 132 }; 133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 struct tcf_t { 135 __u64 install; 136 __u64 lastuse; 137 __u64 expires; 138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 }; 140 struct tc_cnt { 141 int refcnt; 142 int bindcnt; 143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 }; 145 #define tc_gen __u32 index; __u32 capab; int action; int refcnt; int bindcnt 146 enum { 147 TCA_POLICE_UNSPEC, 148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 TCA_POLICE_TBF, 150 TCA_POLICE_RATE, 151 TCA_POLICE_PEAKRATE, 152 TCA_POLICE_AVRATE, 153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 TCA_POLICE_RESULT, 155 __TCA_POLICE_MAX 156 #define TCA_POLICE_RESULT TCA_POLICE_RESULT 157 }; 158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 #define TCA_POLICE_MAX (__TCA_POLICE_MAX - 1) 160 #define TC_U32_HTID(h) ((h) & 0xFFF00000) 161 #define TC_U32_USERHTID(h) (TC_U32_HTID(h) >> 20) 162 #define TC_U32_HASH(h) (((h) >> 12) & 0xFF) 163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 #define TC_U32_NODE(h) ((h) & 0xFFF) 165 #define TC_U32_KEY(h) ((h) & 0xFFFFF) 166 #define TC_U32_UNSPEC 0 167 #define TC_U32_ROOT (0xFFF00000) 168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169 enum { 170 TCA_U32_UNSPEC, 171 TCA_U32_CLASSID, 172 TCA_U32_HASH, 173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 TCA_U32_LINK, 175 TCA_U32_DIVISOR, 176 TCA_U32_SEL, 177 TCA_U32_POLICE, 178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179 TCA_U32_ACT, 180 TCA_U32_INDEV, 181 TCA_U32_PCNT, 182 TCA_U32_MARK, 183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184 __TCA_U32_MAX 185 }; 186 #define TCA_U32_MAX (__TCA_U32_MAX - 1) 187 struct tc_u32_key { 188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189 __be32 mask; 190 __be32 val; 191 int off; 192 int offmask; 193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194 }; 195 struct tc_u32_sel { 196 unsigned char flags; 197 unsigned char offshift; 198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199 unsigned char nkeys; 200 __be16 offmask; 201 __u16 off; 202 short offoff; 203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204 short hoff; 205 __be32 hmask; 206 struct tc_u32_key keys[0]; 207 }; 208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209 struct tc_u32_mark { 210 __u32 val; 211 __u32 mask; 212 __u32 success; 213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214 }; 215 struct tc_u32_pcnt { 216 __u64 rcnt; 217 __u64 rhit; 218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219 __u64 kcnts[0]; 220 }; 221 #define TC_U32_TERMINAL 1 222 #define TC_U32_OFFSET 2 223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224 #define TC_U32_VAROFFSET 4 225 #define TC_U32_EAT 8 226 #define TC_U32_MAXDEPTH 8 227 enum { 228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229 TCA_RSVP_UNSPEC, 230 TCA_RSVP_CLASSID, 231 TCA_RSVP_DST, 232 TCA_RSVP_SRC, 233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 234 TCA_RSVP_PINFO, 235 TCA_RSVP_POLICE, 236 TCA_RSVP_ACT, 237 __TCA_RSVP_MAX 238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 239 }; 240 #define TCA_RSVP_MAX (__TCA_RSVP_MAX - 1) 241 struct tc_rsvp_gpi { 242 __u32 key; 243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244 __u32 mask; 245 int offset; 246 }; 247 struct tc_rsvp_pinfo { 248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 249 struct tc_rsvp_gpi dpi; 250 struct tc_rsvp_gpi spi; 251 __u8 protocol; 252 __u8 tunnelid; 253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254 __u8 tunnelhdr; 255 __u8 pad; 256 }; 257 enum { 258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 259 TCA_ROUTE4_UNSPEC, 260 TCA_ROUTE4_CLASSID, 261 TCA_ROUTE4_TO, 262 TCA_ROUTE4_FROM, 263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 264 TCA_ROUTE4_IIF, 265 TCA_ROUTE4_POLICE, 266 TCA_ROUTE4_ACT, 267 __TCA_ROUTE4_MAX 268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 269 }; 270 #define TCA_ROUTE4_MAX (__TCA_ROUTE4_MAX - 1) 271 enum { 272 TCA_FW_UNSPEC, 273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 274 TCA_FW_CLASSID, 275 TCA_FW_POLICE, 276 TCA_FW_INDEV, 277 TCA_FW_ACT, 278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 279 TCA_FW_MASK, 280 __TCA_FW_MAX 281 }; 282 #define TCA_FW_MAX (__TCA_FW_MAX - 1) 283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 284 enum { 285 TCA_TCINDEX_UNSPEC, 286 TCA_TCINDEX_HASH, 287 TCA_TCINDEX_MASK, 288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 289 TCA_TCINDEX_SHIFT, 290 TCA_TCINDEX_FALL_THROUGH, 291 TCA_TCINDEX_CLASSID, 292 TCA_TCINDEX_POLICE, 293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 294 TCA_TCINDEX_ACT, 295 __TCA_TCINDEX_MAX 296 }; 297 #define TCA_TCINDEX_MAX (__TCA_TCINDEX_MAX - 1) 298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 299 enum { 300 FLOW_KEY_SRC, 301 FLOW_KEY_DST, 302 FLOW_KEY_PROTO, 303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 304 FLOW_KEY_PROTO_SRC, 305 FLOW_KEY_PROTO_DST, 306 FLOW_KEY_IIF, 307 FLOW_KEY_PRIORITY, 308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 309 FLOW_KEY_MARK, 310 FLOW_KEY_NFCT, 311 FLOW_KEY_NFCT_SRC, 312 FLOW_KEY_NFCT_DST, 313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 314 FLOW_KEY_NFCT_PROTO_SRC, 315 FLOW_KEY_NFCT_PROTO_DST, 316 FLOW_KEY_RTCLASSID, 317 FLOW_KEY_SKUID, 318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 319 FLOW_KEY_SKGID, 320 FLOW_KEY_VLAN_TAG, 321 FLOW_KEY_RXHASH, 322 __FLOW_KEY_MAX, 323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 324 }; 325 #define FLOW_KEY_MAX (__FLOW_KEY_MAX - 1) 326 enum { 327 FLOW_MODE_MAP, 328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 329 FLOW_MODE_HASH, 330 }; 331 enum { 332 TCA_FLOW_UNSPEC, 333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 334 TCA_FLOW_KEYS, 335 TCA_FLOW_MODE, 336 TCA_FLOW_BASECLASS, 337 TCA_FLOW_RSHIFT, 338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 339 TCA_FLOW_ADDEND, 340 TCA_FLOW_MASK, 341 TCA_FLOW_XOR, 342 TCA_FLOW_DIVISOR, 343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 344 TCA_FLOW_ACT, 345 TCA_FLOW_POLICE, 346 TCA_FLOW_EMATCHES, 347 TCA_FLOW_PERTURB, 348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 349 __TCA_FLOW_MAX 350 }; 351 #define TCA_FLOW_MAX (__TCA_FLOW_MAX - 1) 352 enum { 353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 354 TCA_BASIC_UNSPEC, 355 TCA_BASIC_CLASSID, 356 TCA_BASIC_EMATCHES, 357 TCA_BASIC_ACT, 358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 359 TCA_BASIC_POLICE, 360 __TCA_BASIC_MAX 361 }; 362 #define TCA_BASIC_MAX (__TCA_BASIC_MAX - 1) 363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 364 enum { 365 TCA_CGROUP_UNSPEC, 366 TCA_CGROUP_ACT, 367 TCA_CGROUP_POLICE, 368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 369 TCA_CGROUP_EMATCHES, 370 __TCA_CGROUP_MAX, 371 }; 372 #define TCA_CGROUP_MAX (__TCA_CGROUP_MAX - 1) 373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 374 enum { 375 TCA_BPF_UNSPEC, 376 TCA_BPF_ACT, 377 TCA_BPF_POLICE, 378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 379 TCA_BPF_CLASSID, 380 TCA_BPF_OPS_LEN, 381 TCA_BPF_OPS, 382 __TCA_BPF_MAX, 383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 384 }; 385 #define TCA_BPF_MAX (__TCA_BPF_MAX - 1) 386 struct tcf_ematch_tree_hdr { 387 __u16 nmatches; 388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 389 __u16 progid; 390 }; 391 enum { 392 TCA_EMATCH_TREE_UNSPEC, 393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 394 TCA_EMATCH_TREE_HDR, 395 TCA_EMATCH_TREE_LIST, 396 __TCA_EMATCH_TREE_MAX 397 }; 398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 399 #define TCA_EMATCH_TREE_MAX (__TCA_EMATCH_TREE_MAX - 1) 400 struct tcf_ematch_hdr { 401 __u16 matchid; 402 __u16 kind; 403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 404 __u16 flags; 405 __u16 pad; 406 }; 407 #define TCF_EM_REL_END 0 408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 409 #define TCF_EM_REL_AND (1 << 0) 410 #define TCF_EM_REL_OR (1 << 1) 411 #define TCF_EM_INVERT (1 << 2) 412 #define TCF_EM_SIMPLE (1 << 3) 413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 414 #define TCF_EM_REL_MASK 3 415 #define TCF_EM_REL_VALID(v) (((v) & TCF_EM_REL_MASK) != TCF_EM_REL_MASK) 416 enum { 417 TCF_LAYER_LINK, 418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 419 TCF_LAYER_NETWORK, 420 TCF_LAYER_TRANSPORT, 421 __TCF_LAYER_MAX 422 }; 423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 424 #define TCF_LAYER_MAX (__TCF_LAYER_MAX - 1) 425 #define TCF_EM_CONTAINER 0 426 #define TCF_EM_CMP 1 427 #define TCF_EM_NBYTE 2 428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 429 #define TCF_EM_U32 3 430 #define TCF_EM_META 4 431 #define TCF_EM_TEXT 5 432 #define TCF_EM_VLAN 6 433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 434 #define TCF_EM_CANID 7 435 #define TCF_EM_IPSET 8 436 #define TCF_EM_MAX 8 437 enum { 438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 439 TCF_EM_PROG_TC 440 }; 441 enum { 442 TCF_EM_OPND_EQ, 443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 444 TCF_EM_OPND_GT, 445 TCF_EM_OPND_LT 446 }; 447 #endif 448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 449