GNU Linux-libre 4.9.315-gnu1
[releases.git] / include / uapi / linux / netfilter / xt_rateest.h
1 #ifndef _XT_RATEEST_MATCH_H
2 #define _XT_RATEEST_MATCH_H
3
4 #include <linux/types.h>
5 #include <linux/if.h>
6
7 enum xt_rateest_match_flags {
8         XT_RATEEST_MATCH_INVERT = 1<<0,
9         XT_RATEEST_MATCH_ABS    = 1<<1,
10         XT_RATEEST_MATCH_REL    = 1<<2,
11         XT_RATEEST_MATCH_DELTA  = 1<<3,
12         XT_RATEEST_MATCH_BPS    = 1<<4,
13         XT_RATEEST_MATCH_PPS    = 1<<5,
14 };
15
16 enum xt_rateest_match_mode {
17         XT_RATEEST_MATCH_NONE,
18         XT_RATEEST_MATCH_EQ,
19         XT_RATEEST_MATCH_LT,
20         XT_RATEEST_MATCH_GT,
21 };
22
23 struct xt_rateest_match_info {
24         char                    name1[IFNAMSIZ];
25         char                    name2[IFNAMSIZ];
26         __u16           flags;
27         __u16           mode;
28         __u32           bps1;
29         __u32           pps1;
30         __u32           bps2;
31         __u32           pps2;
32
33         /* Used internally by the kernel */
34         struct xt_rateest       *est1 __attribute__((aligned(8)));
35         struct xt_rateest       *est2 __attribute__((aligned(8)));
36 };
37
38 #endif /* _XT_RATEEST_MATCH_H */