GNU Linux-libre 4.9.337-gnu1
[releases.git] / include / uapi / linux / tc_act / tc_pedit.h
1 #ifndef __LINUX_TC_PED_H
2 #define __LINUX_TC_PED_H
3
4 #include <linux/types.h>
5 #include <linux/pkt_cls.h>
6
7 #define TCA_ACT_PEDIT 7
8
9 enum {
10         TCA_PEDIT_UNSPEC,
11         TCA_PEDIT_TM,
12         TCA_PEDIT_PARMS,
13         TCA_PEDIT_PAD,
14         __TCA_PEDIT_MAX
15 };
16 #define TCA_PEDIT_MAX (__TCA_PEDIT_MAX - 1)
17                                                                                 
18 struct tc_pedit_key {
19         __u32           mask;  /* AND */
20         __u32           val;   /*XOR */
21         __u32           off;  /*offset */
22         __u32           at;
23         __u32           offmask;
24         __u32           shift;
25 };
26                                                                                 
27 struct tc_pedit_sel {
28         tc_gen;
29         unsigned char           nkeys;
30         unsigned char           flags;
31         struct tc_pedit_key     keys[0];
32 };
33 #define tc_pedit tc_pedit_sel
34
35 #endif