/** Initialize the firewall rules */ int fw_init(void) { int result = 0; int new_fw_state; t_client *client = NULL; if (!init_icmp_socket()) { return 0; } debug(LOG_INFO, "Initializing Firewall"); result = iptables_fw_init(); if (restart_orig_pid) { debug(LOG_INFO, "Restoring firewall rules for clients inherited from parent"); LOCK_CLIENT_LIST(); client = client_get_first_client(); while (client) { new_fw_state = client->fw_connection_state; client->fw_connection_state = FW_MARK_NONE; fw_allow(client, new_fw_state); client = client->next; } UNLOCK_CLIENT_LIST(); } return result; }
/** Initialize the firewall rules */ int fw_init(void) { debug(LOG_INFO, "Initializing Firewall"); return iptables_fw_init(); }