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
7struct 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
17enum {
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