/* ****************************************************************************** * INTERPEAK CONFIGURATION SOURCE FILE * * Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipfirewall_config.c,v $ $Revision: 1.15 $ * $Source: /home/interpeak/CVSRoot/ipfirewall/config/ipfirewall_config.c,v $ * $Author: markus $ * $State: Exp $ $Locker: $ * * INTERPEAK_COPYRIGHT_STRING * Design and implementation by Markus Carlstedt ****************************************************************************** */ /* **************************************************************************** * 1 DESCRIPTION **************************************************************************** * Firewall configuration. */ /* **************************************************************************** * 2 INCLUDE FILES **************************************************************************** */ #include "ipfirewall_config.h" #include #include #include #include #include /* **************************************************************************** * 3 DEFINES **************************************************************************** */ /* **************************************************************************** * 4 TYPES **************************************************************************** */ /* **************************************************************************** * 5 EXTERN PROTOTYPES **************************************************************************** */ IP_EXTERN int ipfirewall_cmd_ipfirewall(int argc, char **argv); /* **************************************************************************** * 6 LOCAL PROTOTYPES **************************************************************************** */ IP_PUBLIC Ip_err ipfirewall_configure(void); /* **************************************************************************** * 7 DATA **************************************************************************** */ /* *=========================================================================== * SYSTEM VARIABLES *=========================================================================== */ IP_STATIC IP_CONST Ipcom_sysvar ipfirewall_conf_sysvar[] = { /* The timeout until an icmp stateful mapping expires */ IP_SYSVAR("ipfirewall.timeout.icmp", "5", IPF_ICMP_TIMEOUT), /* The timeout until an udp stateful mapping expires */ IP_SYSVAR("ipfirewall.timeout.udp", "60", IPF_UDP_TIMEOUT), /* The timeout until a tcp stateful mapping expires */ IP_SYSVAR("ipfirewall.timeout.tcp", "432000", IPF_TCP_TIMEOUT), /* The timeout until other stateful mappings expires */ IP_SYSVAR("ipfirewall.timeout.other", "60", IPF_OTHER_TIMEOUT), /* The maximum number of stateful mappings */ IP_SYSVAR("ipfirewall.capacity.states", "1000", IPF_MAX_STATEFUL_MAPPINGS), #if IPCOM_USE_FILE != IPCOM_FILE_NONE #ifdef IPCOM_USE_INET /* IP filter rule specification file for IPv4 */ IP_SYSVAR("ipfirewall.rules.configv4", IPCOM_FILE_ROOT"fw4.cfg", IPF_IPV4_RULE_FILE), #endif #ifdef IPCOM_USE_INET6 /* IP filter rule specification file for IPv6 */ IP_SYSVAR("ipfirewall.rules.configv6", IPCOM_FILE_ROOT"fw6.cfg", IPF_IPV6_RULE_FILE), #endif /* MAC filter rule specification file */ IP_SYSVAR("ipfirewall.rules.configmac", IPCOM_FILE_ROOT"fwmac.cfg", IPF_FWMAC_RULE_FILE), #endif { IP_NULL, IP_NULL } }; /* **************************************************************************** * 8 STATIC FUNCTIONS **************************************************************************** */ /* **************************************************************************** * 9 GLOBAL FUNCTIONS **************************************************************************** */ /* **************************************************************************** * 10 PUBLIC FUNCTIONS **************************************************************************** */ /* *=========================================================================== * ipfirewall_configure *=========================================================================== * Description: Firewall configure routine. * Parameters: none. * Returns: IPCOM_SUCCESS = ok * IPCOM_ERR_XXX = error code. */ IP_PUBLIC Ip_err ipfirewall_configure(void) { #if defined(INCLUDE_IPFIREWALL_CMD) || !defined(IP_PORT_VXWORKS) Ip_err ret; ret = ipcom_shell_add_cmd("ipf", "ipf [ options ] ", "Firewall", ipfirewall_cmd_ipfirewall, IPCOM_SHELL_PRIO_SAME, IPCOM_PROC_STACK_SMALL); if(ret != IPCOM_SUCCESS) return ret; #endif /* defined(INCLUDE_IPFIREWALL_CMD) || !defined(IP_PORT_VXWORKS) */ return ipcom_sysvar_setv(ipfirewall_conf_sysvar, 0); } /* **************************************************************************** * END OF FILE **************************************************************************** */