xref: /linux/include/uapi/linux/netfilter/xt_time.h (revision 6ed7ffddcf61f668114edb676417e5fb33773b59)
1 #ifndef _XT_TIME_H
2 #define _XT_TIME_H 1
3 
4 #include <linux/types.h>
5 
6 struct xt_time_info {
7 	__u32 date_start;
8 	__u32 date_stop;
9 	__u32 daytime_start;
10 	__u32 daytime_stop;
11 	__u32 monthdays_match;
12 	__u8 weekdays_match;
13 	__u8 flags;
14 };
15 
16 enum {
17 	/* Match against local time (instead of UTC) */
18 	XT_TIME_LOCAL_TZ = 1 << 0,
19 
20 	/* treat timestart > timestop (e.g. 23:00-01:00) as single period */
21 	XT_TIME_CONTIGUOUS = 1 << 1,
22 
23 	/* Shortcuts */
24 	XT_TIME_ALL_MONTHDAYS = 0xFFFFFFFE,
25 	XT_TIME_ALL_WEEKDAYS  = 0xFE,
26 	XT_TIME_MIN_DAYTIME   = 0,
27 	XT_TIME_MAX_DAYTIME   = 24 * 60 * 60 - 1,
28 };
29 
30 #define XT_TIME_ALL_FLAGS (XT_TIME_LOCAL_TZ|XT_TIME_CONTIGUOUS)
31 
32 #endif /* _XT_TIME_H */
33