1/*
2 * Copyright (c) 2012, 2015, The Linux Foundation. All rights reserved.
3 * Permission to use, copy, modify, and/or distribute this software for
4 * any purpose with or without fee is hereby granted, provided that the
5 * above copyright notice and this permission notice appear in all copies.
6 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
7 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
8 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
9 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
10 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
11 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
12 * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
13 */
14
15
16#ifndef _NAT_HELPER_H
17#define _NAT_HELPER_H
18
19#include "sw.h"
20
21#define NAPT_TABLE_SIZE 1024
22
23void host_helper_init(void);
24void host_helper_exit(void);
25void  napt_helper_init(void);
26void napt_helper_exit(void);
27void nat_ipt_helper_init(void);
28void nat_ipt_helper_exit(void);
29
30void nat_helper_bg_task_init(void);
31void nat_helper_bg_task_exit(void);
32
33void hnat_log_msg(int level, char *string, ...);
34#define NAT_LOG_MAX_SIZE 1024
35enum {
36	HNAT_LOG_LEVEL_DEBUG = 0,
37	HNAT_LOG_LEVEL_INFO,
38	HNAT_LOG_LEVEL_ERR,
39	HNAT_LOG_LEVEL_DISABLE
40};
41#define HNAT_PRINTK(arg...)  \
42			hnat_log_msg(HNAT_LOG_LEVEL_DEBUG, arg)
43#define HNAT_INFO_PRINTK(arg...)  \
44			hnat_log_msg(HNAT_LOG_LEVEL_INFO, arg)
45#define HNAT_ERR_PRINTK(arg...)  \
46			hnat_log_msg(HNAT_LOG_LEVEL_ERR, arg)
47
48
49#endif
50