blob: 4ece02a77b9aa567ca02f859735c815f064bb63f [file] [log] [blame]
Christopher Ferrisccfaccd2016-08-24 12:11:31 -07001#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
12struct tc_ife {
13 tc_gen;
14 __u16 flags;
15};
16
17/*XXX: We need to encode the total number of bytes consumed */
18enum {
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_PAD,
27 __TCA_IFE_MAX
28};
29#define TCA_IFE_MAX (__TCA_IFE_MAX - 1)
30
31#define IFE_META_SKBMARK 1
32#define IFE_META_HASHID 2
33#define IFE_META_PRIO 3
34#define IFE_META_QMAP 4
35/*Can be overridden at runtime by module option*/
36#define __IFE_META_MAX 5
37#define IFE_META_MAX (__IFE_META_MAX - 1)
38
39#endif