Home | History | Annotate | Download | only in linux
      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 struct tcf_ematch_tree_hdr {
    375  __u16 nmatches;
    376  __u16 progid;
    377 };
    378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    379 enum {
    380  TCA_EMATCH_TREE_UNSPEC,
    381  TCA_EMATCH_TREE_HDR,
    382  TCA_EMATCH_TREE_LIST,
    383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    384  __TCA_EMATCH_TREE_MAX
    385 };
    386 #define TCA_EMATCH_TREE_MAX (__TCA_EMATCH_TREE_MAX - 1)
    387 struct tcf_ematch_hdr {
    388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    389  __u16 matchid;
    390  __u16 kind;
    391  __u16 flags;
    392  __u16 pad;
    393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    394 };
    395 #define TCF_EM_REL_END 0
    396 #define TCF_EM_REL_AND (1<<0)
    397 #define TCF_EM_REL_OR (1<<1)
    398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    399 #define TCF_EM_INVERT (1<<2)
    400 #define TCF_EM_SIMPLE (1<<3)
    401 #define TCF_EM_REL_MASK 3
    402 #define TCF_EM_REL_VALID(v) (((v) & TCF_EM_REL_MASK) != TCF_EM_REL_MASK)
    403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    404 enum {
    405  TCF_LAYER_LINK,
    406  TCF_LAYER_NETWORK,
    407  TCF_LAYER_TRANSPORT,
    408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    409  __TCF_LAYER_MAX
    410 };
    411 #define TCF_LAYER_MAX (__TCF_LAYER_MAX - 1)
    412 #define TCF_EM_CONTAINER 0
    413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    414 #define TCF_EM_CMP 1
    415 #define TCF_EM_NBYTE 2
    416 #define TCF_EM_U32 3
    417 #define TCF_EM_META 4
    418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    419 #define TCF_EM_TEXT 5
    420 #define TCF_EM_VLAN 6
    421 #define TCF_EM_CANID 7
    422 #define TCF_EM_IPSET 8
    423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    424 #define TCF_EM_MAX 8
    425 enum {
    426  TCF_EM_PROG_TC
    427 };
    428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    429 enum {
    430  TCF_EM_OPND_EQ,
    431  TCF_EM_OPND_GT,
    432  TCF_EM_OPND_LT
    433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    434 };
    435 #endif
    436