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