1 /*
2  * linux/include/linux/netfilter/xt_IDLETIMER.h
3  *
4  * Header file for Xtables timer target module.
5  *
6  * Copyright (C) 2004, 2010 Nokia Corporation
7  *
8  * Written by Timo Teras <ext-timo.teras@nokia.com>
9  *
10  * Converted to x_tables and forward-ported to 2.6.34
11  * by Luciano Coelho <luciano.coelho@nokia.com>
12  *
13  * Contact: Luciano Coelho <luciano.coelho@nokia.com>
14  *
15  * This program is free software; you can redistribute it and/or
16  * modify it under the terms of the GNU General Public License
17  * version 2 as published by the Free Software Foundation.
18  *
19  * This program is distributed in the hope that it will be useful, but
20  * WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
22  * General Public License for more details.
23  *
24  * You should have received a copy of the GNU General Public License
25  * along with this program; if not, write to the Free Software
26  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
27  * 02110-1301 USA
28  */
29 
30 #ifndef _XT_IDLETIMER_H
31 #define _XT_IDLETIMER_H
32 
33 #include <linux/types.h>
34 
35 #define MAX_IDLETIMER_LABEL_SIZE 28
36 #define NLMSG_MAX_SIZE 64
37 
38 #define NL_EVENT_TYPE_INACTIVE 0
39 #define NL_EVENT_TYPE_ACTIVE 1
40 
41 struct idletimer_tg_info {
42 	__u32 timeout;
43 
44 	char label[MAX_IDLETIMER_LABEL_SIZE];
45 
46 	/* Use netlink messages for notification in addition to sysfs */
47 	__u8 send_nl_msg;
48 
49 	/* for kernel module internal use only */
50 	struct idletimer_tg *timer __attribute__((aligned(8)));
51 };
52 
53 #endif
54