1#ifndef _XT_RATEEST_MATCH_H
2#define _XT_RATEEST_MATCH_H
3
4#include <linux/types.h>
5#include <linux/if.h>
6
7enum 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
16enum 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
23struct 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 */
39