00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00027 #ifndef _FW_IPTABLES_H_
00028 #define _FW_IPTABLES_H_
00029 
00030 #include "firewall.h"
00031 
00034 #define TABLE_WIFIDOG_OUTGOING  "WiFiDog_Outgoing"
00035 #define TABLE_WIFIDOG_WIFI_TO_INTERNET "WiFiDog_WIFI2Internet"
00036 #define TABLE_WIFIDOG_WIFI_TO_ROUTER "WiFiDog_WIFI2Router"
00037 #define TABLE_WIFIDOG_INCOMING  "WiFiDog_Incoming"
00038 #define TABLE_WIFIDOG_AUTHSERVERS "WiFiDog_AuthServers"
00039 #define TABLE_WIFIDOG_GLOBAL  "WiFiDog_Global"
00040 #define TABLE_WIFIDOG_VALIDATE  "WiFiDog_Validate"
00041 #define TABLE_WIFIDOG_KNOWN     "WiFiDog_Known"
00042 #define TABLE_WIFIDOG_UNKNOWN   "WiFiDog_Unknown"
00043 #define TABLE_WIFIDOG_LOCKED    "WiFiDog_Locked"
00044 
00047 typedef enum fw_access_t_ {
00048     FW_ACCESS_ALLOW,
00049     FW_ACCESS_DENY
00050 } fw_access_t;
00051 
00053 int iptables_fw_init(void);
00054 
00056 void iptables_fw_set_authservers(void);
00057 
00059 void iptables_fw_clear_authservers(void);
00060 
00062 int iptables_fw_destroy(void);
00063 
00065 int iptables_fw_destroy_mention( char * table, char * chain, char * mention);
00066 
00068 int iptables_fw_access(fw_access_t type, char *ip, char *mac, int tag);
00069 
00071 int iptables_fw_counters_update(void);
00072 
00073 #endif