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 enum {
     25   TCA_ACT_UNSPEC,
     26   TCA_ACT_KIND,
     27   TCA_ACT_OPTIONS,
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29   TCA_ACT_INDEX,
     30   TCA_ACT_STATS,
     31   TCA_ACT_PAD,
     32   __TCA_ACT_MAX
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 };
     35 #define TCA_ACT_MAX __TCA_ACT_MAX
     36 #define TCA_OLD_COMPAT (TCA_ACT_MAX + 1)
     37 #define TCA_ACT_MAX_PRIO 32
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define TCA_ACT_BIND 1
     40 #define TCA_ACT_NOBIND 0
     41 #define TCA_ACT_UNBIND 1
     42 #define TCA_ACT_NOUNBIND 0
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 #define TCA_ACT_REPLACE 1
     45 #define TCA_ACT_NOREPLACE 0
     46 #define TC_ACT_UNSPEC (- 1)
     47 #define TC_ACT_OK 0
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 #define TC_ACT_RECLASSIFY 1
     50 #define TC_ACT_SHOT 2
     51 #define TC_ACT_PIPE 3
     52 #define TC_ACT_STOLEN 4
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 #define TC_ACT_QUEUED 5
     55 #define TC_ACT_REPEAT 6
     56 #define TC_ACT_REDIRECT 7
     57 #define TC_ACT_JUMP 0x10000000
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59 enum {
     60   TCA_ID_UNSPEC = 0,
     61   TCA_ID_POLICE = 1,
     62   __TCA_ID_MAX = 255
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64 };
     65 #define TCA_ID_MAX __TCA_ID_MAX
     66 struct tc_police {
     67   __u32 index;
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69   int action;
     70 #define TC_POLICE_UNSPEC TC_ACT_UNSPEC
     71 #define TC_POLICE_OK TC_ACT_OK
     72 #define TC_POLICE_RECLASSIFY TC_ACT_RECLASSIFY
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74 #define TC_POLICE_SHOT TC_ACT_SHOT
     75 #define TC_POLICE_PIPE TC_ACT_PIPE
     76   __u32 limit;
     77   __u32 burst;
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79   __u32 mtu;
     80   struct tc_ratespec rate;
     81   struct tc_ratespec peakrate;
     82   int refcnt;
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84   int bindcnt;
     85   __u32 capab;
     86 };
     87 struct tcf_t {
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89   __u64 install;
     90   __u64 lastuse;
     91   __u64 expires;
     92   __u64 firstuse;
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94 };
     95 struct tc_cnt {
     96   int refcnt;
     97   int bindcnt;
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 };
    100 #define tc_gen __u32 index; __u32 capab; int action; int refcnt; int bindcnt
    101 enum {
    102   TCA_POLICE_UNSPEC,
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104   TCA_POLICE_TBF,
    105   TCA_POLICE_RATE,
    106   TCA_POLICE_PEAKRATE,
    107   TCA_POLICE_AVRATE,
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109   TCA_POLICE_RESULT,
    110   TCA_POLICE_TM,
    111   TCA_POLICE_PAD,
    112   __TCA_POLICE_MAX
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114 #define TCA_POLICE_RESULT TCA_POLICE_RESULT
    115 };
    116 #define TCA_POLICE_MAX (__TCA_POLICE_MAX - 1)
    117 #define TCA_CLS_FLAGS_SKIP_HW (1 << 0)
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 #define TCA_CLS_FLAGS_SKIP_SW (1 << 1)
    120 #define TC_U32_HTID(h) ((h) & 0xFFF00000)
    121 #define TC_U32_USERHTID(h) (TC_U32_HTID(h) >> 20)
    122 #define TC_U32_HASH(h) (((h) >> 12) & 0xFF)
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124 #define TC_U32_NODE(h) ((h) & 0xFFF)
    125 #define TC_U32_KEY(h) ((h) & 0xFFFFF)
    126 #define TC_U32_UNSPEC 0
    127 #define TC_U32_ROOT (0xFFF00000)
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129 enum {
    130   TCA_U32_UNSPEC,
    131   TCA_U32_CLASSID,
    132   TCA_U32_HASH,
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134   TCA_U32_LINK,
    135   TCA_U32_DIVISOR,
    136   TCA_U32_SEL,
    137   TCA_U32_POLICE,
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139   TCA_U32_ACT,
    140   TCA_U32_INDEV,
    141   TCA_U32_PCNT,
    142   TCA_U32_MARK,
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144   TCA_U32_FLAGS,
    145   TCA_U32_PAD,
    146   __TCA_U32_MAX
    147 };
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149 #define TCA_U32_MAX (__TCA_U32_MAX - 1)
    150 struct tc_u32_key {
    151   __be32 mask;
    152   __be32 val;
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154   int off;
    155   int offmask;
    156 };
    157 struct tc_u32_sel {
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159   unsigned char flags;
    160   unsigned char offshift;
    161   unsigned char nkeys;
    162   __be16 offmask;
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164   __u16 off;
    165   short offoff;
    166   short hoff;
    167   __be32 hmask;
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169   struct tc_u32_key keys[0];
    170 };
    171 struct tc_u32_mark {
    172   __u32 val;
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174   __u32 mask;
    175   __u32 success;
    176 };
    177 struct tc_u32_pcnt {
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179   __u64 rcnt;
    180   __u64 rhit;
    181   __u64 kcnts[0];
    182 };
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184 #define TC_U32_TERMINAL 1
    185 #define TC_U32_OFFSET 2
    186 #define TC_U32_VAROFFSET 4
    187 #define TC_U32_EAT 8
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189 #define TC_U32_MAXDEPTH 8
    190 enum {
    191   TCA_RSVP_UNSPEC,
    192   TCA_RSVP_CLASSID,
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194   TCA_RSVP_DST,
    195   TCA_RSVP_SRC,
    196   TCA_RSVP_PINFO,
    197   TCA_RSVP_POLICE,
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199   TCA_RSVP_ACT,
    200   __TCA_RSVP_MAX
    201 };
    202 #define TCA_RSVP_MAX (__TCA_RSVP_MAX - 1)
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204 struct tc_rsvp_gpi {
    205   __u32 key;
    206   __u32 mask;
    207   int offset;
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209 };
    210 struct tc_rsvp_pinfo {
    211   struct tc_rsvp_gpi dpi;
    212   struct tc_rsvp_gpi spi;
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214   __u8 protocol;
    215   __u8 tunnelid;
    216   __u8 tunnelhdr;
    217   __u8 pad;
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219 };
    220 enum {
    221   TCA_ROUTE4_UNSPEC,
    222   TCA_ROUTE4_CLASSID,
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224   TCA_ROUTE4_TO,
    225   TCA_ROUTE4_FROM,
    226   TCA_ROUTE4_IIF,
    227   TCA_ROUTE4_POLICE,
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229   TCA_ROUTE4_ACT,
    230   __TCA_ROUTE4_MAX
    231 };
    232 #define TCA_ROUTE4_MAX (__TCA_ROUTE4_MAX - 1)
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234 enum {
    235   TCA_FW_UNSPEC,
    236   TCA_FW_CLASSID,
    237   TCA_FW_POLICE,
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239   TCA_FW_INDEV,
    240   TCA_FW_ACT,
    241   TCA_FW_MASK,
    242   __TCA_FW_MAX
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244 };
    245 #define TCA_FW_MAX (__TCA_FW_MAX - 1)
    246 enum {
    247   TCA_TCINDEX_UNSPEC,
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249   TCA_TCINDEX_HASH,
    250   TCA_TCINDEX_MASK,
    251   TCA_TCINDEX_SHIFT,
    252   TCA_TCINDEX_FALL_THROUGH,
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254   TCA_TCINDEX_CLASSID,
    255   TCA_TCINDEX_POLICE,
    256   TCA_TCINDEX_ACT,
    257   __TCA_TCINDEX_MAX
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259 };
    260 #define TCA_TCINDEX_MAX (__TCA_TCINDEX_MAX - 1)
    261 enum {
    262   FLOW_KEY_SRC,
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264   FLOW_KEY_DST,
    265   FLOW_KEY_PROTO,
    266   FLOW_KEY_PROTO_SRC,
    267   FLOW_KEY_PROTO_DST,
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269   FLOW_KEY_IIF,
    270   FLOW_KEY_PRIORITY,
    271   FLOW_KEY_MARK,
    272   FLOW_KEY_NFCT,
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274   FLOW_KEY_NFCT_SRC,
    275   FLOW_KEY_NFCT_DST,
    276   FLOW_KEY_NFCT_PROTO_SRC,
    277   FLOW_KEY_NFCT_PROTO_DST,
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279   FLOW_KEY_RTCLASSID,
    280   FLOW_KEY_SKUID,
    281   FLOW_KEY_SKGID,
    282   FLOW_KEY_VLAN_TAG,
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284   FLOW_KEY_RXHASH,
    285   __FLOW_KEY_MAX,
    286 };
    287 #define FLOW_KEY_MAX (__FLOW_KEY_MAX - 1)
    288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    289 enum {
    290   FLOW_MODE_MAP,
    291   FLOW_MODE_HASH,
    292 };
    293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    294 enum {
    295   TCA_FLOW_UNSPEC,
    296   TCA_FLOW_KEYS,
    297   TCA_FLOW_MODE,
    298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    299   TCA_FLOW_BASECLASS,
    300   TCA_FLOW_RSHIFT,
    301   TCA_FLOW_ADDEND,
    302   TCA_FLOW_MASK,
    303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    304   TCA_FLOW_XOR,
    305   TCA_FLOW_DIVISOR,
    306   TCA_FLOW_ACT,
    307   TCA_FLOW_POLICE,
    308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    309   TCA_FLOW_EMATCHES,
    310   TCA_FLOW_PERTURB,
    311   __TCA_FLOW_MAX
    312 };
    313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    314 #define TCA_FLOW_MAX (__TCA_FLOW_MAX - 1)
    315 enum {
    316   TCA_BASIC_UNSPEC,
    317   TCA_BASIC_CLASSID,
    318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    319   TCA_BASIC_EMATCHES,
    320   TCA_BASIC_ACT,
    321   TCA_BASIC_POLICE,
    322   __TCA_BASIC_MAX
    323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    324 };
    325 #define TCA_BASIC_MAX (__TCA_BASIC_MAX - 1)
    326 enum {
    327   TCA_CGROUP_UNSPEC,
    328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    329   TCA_CGROUP_ACT,
    330   TCA_CGROUP_POLICE,
    331   TCA_CGROUP_EMATCHES,
    332   __TCA_CGROUP_MAX,
    333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    334 };
    335 #define TCA_CGROUP_MAX (__TCA_CGROUP_MAX - 1)
    336 #define TCA_BPF_FLAG_ACT_DIRECT (1 << 0)
    337 enum {
    338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    339   TCA_BPF_UNSPEC,
    340   TCA_BPF_ACT,
    341   TCA_BPF_POLICE,
    342   TCA_BPF_CLASSID,
    343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    344   TCA_BPF_OPS_LEN,
    345   TCA_BPF_OPS,
    346   TCA_BPF_FD,
    347   TCA_BPF_NAME,
    348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    349   TCA_BPF_FLAGS,
    350   TCA_BPF_FLAGS_GEN,
    351   TCA_BPF_TAG,
    352   __TCA_BPF_MAX,
    353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    354 };
    355 #define TCA_BPF_MAX (__TCA_BPF_MAX - 1)
    356 enum {
    357   TCA_FLOWER_UNSPEC,
    358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    359   TCA_FLOWER_CLASSID,
    360   TCA_FLOWER_INDEV,
    361   TCA_FLOWER_ACT,
    362   TCA_FLOWER_KEY_ETH_DST,
    363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    364   TCA_FLOWER_KEY_ETH_DST_MASK,
    365   TCA_FLOWER_KEY_ETH_SRC,
    366   TCA_FLOWER_KEY_ETH_SRC_MASK,
    367   TCA_FLOWER_KEY_ETH_TYPE,
    368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    369   TCA_FLOWER_KEY_IP_PROTO,
    370   TCA_FLOWER_KEY_IPV4_SRC,
    371   TCA_FLOWER_KEY_IPV4_SRC_MASK,
    372   TCA_FLOWER_KEY_IPV4_DST,
    373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    374   TCA_FLOWER_KEY_IPV4_DST_MASK,
    375   TCA_FLOWER_KEY_IPV6_SRC,
    376   TCA_FLOWER_KEY_IPV6_SRC_MASK,
    377   TCA_FLOWER_KEY_IPV6_DST,
    378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    379   TCA_FLOWER_KEY_IPV6_DST_MASK,
    380   TCA_FLOWER_KEY_TCP_SRC,
    381   TCA_FLOWER_KEY_TCP_DST,
    382   TCA_FLOWER_KEY_UDP_SRC,
    383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    384   TCA_FLOWER_KEY_UDP_DST,
    385   TCA_FLOWER_FLAGS,
    386   TCA_FLOWER_KEY_VLAN_ID,
    387   TCA_FLOWER_KEY_VLAN_PRIO,
    388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    389   TCA_FLOWER_KEY_VLAN_ETH_TYPE,
    390   TCA_FLOWER_KEY_ENC_KEY_ID,
    391   TCA_FLOWER_KEY_ENC_IPV4_SRC,
    392   TCA_FLOWER_KEY_ENC_IPV4_SRC_MASK,
    393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    394   TCA_FLOWER_KEY_ENC_IPV4_DST,
    395   TCA_FLOWER_KEY_ENC_IPV4_DST_MASK,
    396   TCA_FLOWER_KEY_ENC_IPV6_SRC,
    397   TCA_FLOWER_KEY_ENC_IPV6_SRC_MASK,
    398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    399   TCA_FLOWER_KEY_ENC_IPV6_DST,
    400   TCA_FLOWER_KEY_ENC_IPV6_DST_MASK,
    401   TCA_FLOWER_KEY_TCP_SRC_MASK,
    402   TCA_FLOWER_KEY_TCP_DST_MASK,
    403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    404   TCA_FLOWER_KEY_UDP_SRC_MASK,
    405   TCA_FLOWER_KEY_UDP_DST_MASK,
    406   TCA_FLOWER_KEY_SCTP_SRC_MASK,
    407   TCA_FLOWER_KEY_SCTP_DST_MASK,
    408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    409   TCA_FLOWER_KEY_SCTP_SRC,
    410   TCA_FLOWER_KEY_SCTP_DST,
    411   TCA_FLOWER_KEY_ENC_UDP_SRC_PORT,
    412   TCA_FLOWER_KEY_ENC_UDP_SRC_PORT_MASK,
    413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    414   TCA_FLOWER_KEY_ENC_UDP_DST_PORT,
    415   TCA_FLOWER_KEY_ENC_UDP_DST_PORT_MASK,
    416   TCA_FLOWER_KEY_FLAGS,
    417   TCA_FLOWER_KEY_FLAGS_MASK,
    418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    419   TCA_FLOWER_KEY_ICMPV4_CODE,
    420   TCA_FLOWER_KEY_ICMPV4_CODE_MASK,
    421   TCA_FLOWER_KEY_ICMPV4_TYPE,
    422   TCA_FLOWER_KEY_ICMPV4_TYPE_MASK,
    423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    424   TCA_FLOWER_KEY_ICMPV6_CODE,
    425   TCA_FLOWER_KEY_ICMPV6_CODE_MASK,
    426   TCA_FLOWER_KEY_ICMPV6_TYPE,
    427   TCA_FLOWER_KEY_ICMPV6_TYPE_MASK,
    428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    429   __TCA_FLOWER_MAX,
    430 };
    431 #define TCA_FLOWER_MAX (__TCA_FLOWER_MAX - 1)
    432 enum {
    433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    434   TCA_FLOWER_KEY_FLAGS_IS_FRAGMENT = (1 << 0),
    435 };
    436 enum {
    437   TCA_MATCHALL_UNSPEC,
    438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    439   TCA_MATCHALL_CLASSID,
    440   TCA_MATCHALL_ACT,
    441   TCA_MATCHALL_FLAGS,
    442   __TCA_MATCHALL_MAX,
    443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    444 };
    445 #define TCA_MATCHALL_MAX (__TCA_MATCHALL_MAX - 1)
    446 struct tcf_ematch_tree_hdr {
    447   __u16 nmatches;
    448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    449   __u16 progid;
    450 };
    451 enum {
    452   TCA_EMATCH_TREE_UNSPEC,
    453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    454   TCA_EMATCH_TREE_HDR,
    455   TCA_EMATCH_TREE_LIST,
    456   __TCA_EMATCH_TREE_MAX
    457 };
    458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    459 #define TCA_EMATCH_TREE_MAX (__TCA_EMATCH_TREE_MAX - 1)
    460 struct tcf_ematch_hdr {
    461   __u16 matchid;
    462   __u16 kind;
    463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    464   __u16 flags;
    465   __u16 pad;
    466 };
    467 #define TCF_EM_REL_END 0
    468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    469 #define TCF_EM_REL_AND (1 << 0)
    470 #define TCF_EM_REL_OR (1 << 1)
    471 #define TCF_EM_INVERT (1 << 2)
    472 #define TCF_EM_SIMPLE (1 << 3)
    473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    474 #define TCF_EM_REL_MASK 3
    475 #define TCF_EM_REL_VALID(v) (((v) & TCF_EM_REL_MASK) != TCF_EM_REL_MASK)
    476 enum {
    477   TCF_LAYER_LINK,
    478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    479   TCF_LAYER_NETWORK,
    480   TCF_LAYER_TRANSPORT,
    481   __TCF_LAYER_MAX
    482 };
    483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    484 #define TCF_LAYER_MAX (__TCF_LAYER_MAX - 1)
    485 #define TCF_EM_CONTAINER 0
    486 #define TCF_EM_CMP 1
    487 #define TCF_EM_NBYTE 2
    488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    489 #define TCF_EM_U32 3
    490 #define TCF_EM_META 4
    491 #define TCF_EM_TEXT 5
    492 #define TCF_EM_VLAN 6
    493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    494 #define TCF_EM_CANID 7
    495 #define TCF_EM_IPSET 8
    496 #define TCF_EM_MAX 8
    497 enum {
    498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    499   TCF_EM_PROG_TC
    500 };
    501 enum {
    502   TCF_EM_OPND_EQ,
    503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    504   TCF_EM_OPND_GT,
    505   TCF_EM_OPND_LT
    506 };
    507 #endif
    508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    509