diff --git a/src/www/firewall_nat_out.php b/src/www/firewall_nat_out.php index c8bb2a9c8..0066794de 100644 --- a/src/www/firewall_nat_out.php +++ b/src/www/firewall_nat_out.php @@ -424,6 +424,8 @@ include("head.inc"); title="" data-toggle="tooltip"> + + diff --git a/src/www/firewall_nat_out_edit.php b/src/www/firewall_nat_out_edit.php index 540688347..1dfd67e74 100644 --- a/src/www/firewall_nat_out_edit.php +++ b/src/www/firewall_nat_out_edit.php @@ -178,7 +178,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { if ($pconfig['source'] == "any" && !empty($pconfig['source_not'])) { $input_errors[] = gettext("Negating source address of \"any\" is invalid."); } - if (!(in_array($pconfig['destination'], array("any","(self)")) || is_ipaddroralias($pconfig['destination']))) { + if (!is_specialnet($pconfig['destination']) && is_ipaddroralias($pconfig['destination'])) { $input_errors[] = gettext("A valid destination must be specified."); } if (!empty($pconfig['destination_subnet']) && !is_numericint($pconfig['destination_subnet'])) { @@ -276,7 +276,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { // destination address if ($pconfig['destination'] == "any") { $natent['destination']['any'] = true; - } elseif (is_alias($pconfig['destination'])){ + } elseif (is_alias($pconfig['destination']) || is_specialnet($pconfig['destination'])){ $natent['destination']['address'] = trim($pconfig['destination']) ; } else { if (is_ipaddrv6($pconfig['destination'])) { @@ -579,12 +579,17 @@ include("head.inc");