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