d648ff66586f255c055d7c45d303d96fea8bb839
[cascardo/linux.git] / include / uapi / linux / tc_act / tc_ife.h
1 #ifndef __UAPI_TC_IFE_H
2 #define __UAPI_TC_IFE_H
3
4 #include <linux/types.h>
5 #include <linux/pkt_cls.h>
6
7 #define TCA_ACT_IFE 25
8 /* Flag bits for now just encoding/decoding; mutually exclusive */
9 #define IFE_ENCODE 1
10 #define IFE_DECODE 0
11
12 struct tc_ife {
13         tc_gen;
14         __u16 flags;
15 };
16
17 /*XXX: We need to encode the total number of bytes consumed */
18 enum {
19         TCA_IFE_UNSPEC,
20         TCA_IFE_PARMS,
21         TCA_IFE_TM,
22         TCA_IFE_DMAC,
23         TCA_IFE_SMAC,
24         TCA_IFE_TYPE,
25         TCA_IFE_METALST,
26         __TCA_IFE_MAX
27 };
28 #define TCA_IFE_MAX (__TCA_IFE_MAX - 1)
29
30 #define IFE_META_SKBMARK 1
31 #define IFE_META_HASHID 2
32 #define IFE_META_PRIO 3
33 #define IFE_META_QMAP 4
34 /*Can be overridden at runtime by module option*/
35 #define __IFE_META_MAX 5
36 #define IFE_META_MAX (__IFE_META_MAX - 1)
37
38 #endif