blob: 716cfabcd5b2fa6064588b118b7721f29477bf30 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef __LINUX_TC_PED_H
2#define __LINUX_TC_PED_H
3
Jaswinder Singh Rajput5dbbf3b2009-01-30 20:11:22 +05304#include <linux/types.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -07005#include <linux/pkt_cls.h>
6
7#define TCA_ACT_PEDIT 7
8
Eric Dumazetd94d9fe2009-11-04 09:50:58 -08009enum {
Linus Torvalds1da177e2005-04-16 15:20:36 -070010 TCA_PEDIT_UNSPEC,
11 TCA_PEDIT_TM,
12 TCA_PEDIT_PARMS,
13 __TCA_PEDIT_MAX
14};
15#define TCA_PEDIT_MAX (__TCA_PEDIT_MAX - 1)
16
Eric Dumazetd94d9fe2009-11-04 09:50:58 -080017struct tc_pedit_key {
Linus Torvalds1da177e2005-04-16 15:20:36 -070018 __u32 mask; /* AND */
19 __u32 val; /*XOR */
20 __u32 off; /*offset */
21 __u32 at;
22 __u32 offmask;
23 __u32 shift;
24};
25
Eric Dumazetd94d9fe2009-11-04 09:50:58 -080026struct tc_pedit_sel {
Linus Torvalds1da177e2005-04-16 15:20:36 -070027 tc_gen;
28 unsigned char nkeys;
29 unsigned char flags;
30 struct tc_pedit_key keys[0];
31};
32#define tc_pedit tc_pedit_sel
33
34#endif