/** * (c) 2012 Mandriva, http://www.mandriva.com * * This file is part of Management Console. * * MMC is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * MMC is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with MMC. If not, see <http://www.gnu.org/licenses/>. */ function getZoneType($zoneName) { $zones_types = getZonesTypes(); if (startsWith($zoneName, $zones_types['internal'])) { return _T("Internal"); } if (startsWith($zoneName, $zones_types['external'])) { return _T("External"); } if ($zoneName == "fw") { return _T("Server"); } if ($zoneName == "all") { return _T("All"); } return _T("Unknow"); }
if (isset($_POST['badd'])) { addMasqueradeRule($_POST['external_if'], $_POST['internal_if']); enableIpFoward(); $n = new NotifyWidgetSuccess(_T("NAT rule added.")); handleServicesModule($n, array("shorewall" => _T("Firewall"))); redirectTo(urlStrRedirect("shorewall/shorewall/masquerade")); } if (isset($_POST['brestart'])) { redirectTo(urlStrRedirect("shorewall/shorewall/restart_service", array("page" => "masquerade"))); } // Add NAT rule form $t = new TitleElement(_T("Add NAT rule"), 2); $t->display(); $f = new ValidatingForm(); $f->push(new Table()); $zones_types = getZonesTypes(); $external = array(); $externalVals = array(); foreach (getZonesInterfaces($zones_types["external"]) as $zone) { $external[] = sprintf("%s (%s)", $zone[0], $zone[1]); $externalVals[] = $zone[1]; } $externalTpl = new SelectItem("external_if"); $externalTpl->setElements($external); $externalTpl->setElementsVal($externalVals); $f->add(new TrFormElement(_T("External network (Internet)"), $externalTpl)); $internal = array(); $internalVals = array(); foreach (getZonesInterfaces($zones_types["internal"]) as $zone) { $internal[] = sprintf("%s (%s)", $zone[0], $zone[1]); $internalVals[] = $zone[1];