blob: 83318e01425e74494f5c48fb25f83d015e522d01 [file] [log] [blame]
Jan Engelhardte948b202008-10-08 11:35:00 +02001#ifndef _LINUX_NETFILTER_XT_RECENT_H
2#define _LINUX_NETFILTER_XT_RECENT_H 1
3
Arnd Bergmann60c195c2009-02-26 00:51:43 +01004#include <linux/types.h>
5
Jan Engelhardte948b202008-10-08 11:35:00 +02006enum {
7 XT_RECENT_CHECK = 1 << 0,
8 XT_RECENT_SET = 1 << 1,
9 XT_RECENT_UPDATE = 1 << 2,
10 XT_RECENT_REMOVE = 1 << 3,
11 XT_RECENT_TTL = 1 << 4,
Tim Gardner0079c5a2010-03-16 19:53:13 +010012 XT_RECENT_REAP = 1 << 5,
Jan Engelhardte948b202008-10-08 11:35:00 +020013
14 XT_RECENT_SOURCE = 0,
15 XT_RECENT_DEST = 1,
16
17 XT_RECENT_NAME_LEN = 200,
18};
19
Tim Gardner0079c5a2010-03-16 19:53:13 +010020/* Only allowed with --rcheck and --update */
21#define XT_RECENT_MODIFIERS (XT_RECENT_TTL|XT_RECENT_REAP)
22
Tim Gardner606a9a02010-03-17 16:18:56 +010023#define XT_RECENT_VALID_FLAGS (XT_RECENT_CHECK|XT_RECENT_SET|XT_RECENT_UPDATE|\
24 XT_RECENT_REMOVE|XT_RECENT_TTL|XT_RECENT_REAP)
25
Jan Engelhardte948b202008-10-08 11:35:00 +020026struct xt_recent_mtinfo {
Arnd Bergmann60c195c2009-02-26 00:51:43 +010027 __u32 seconds;
28 __u32 hit_count;
29 __u8 check_set;
30 __u8 invert;
Jan Engelhardte948b202008-10-08 11:35:00 +020031 char name[XT_RECENT_NAME_LEN];
Arnd Bergmann60c195c2009-02-26 00:51:43 +010032 __u8 side;
Jan Engelhardte948b202008-10-08 11:35:00 +020033};
34
35#endif /* _LINUX_NETFILTER_XT_RECENT_H */