summaryrefslogtreecommitdiffstats
path: root/usr/local/www/firewall_nat_server_edit.php
diff options
context:
space:
mode:
Diffstat (limited to 'usr/local/www/firewall_nat_server_edit.php')
-rwxr-xr-xusr/local/www/firewall_nat_server_edit.php15
1 files changed, 14 insertions, 1 deletions
diff --git a/usr/local/www/firewall_nat_server_edit.php b/usr/local/www/firewall_nat_server_edit.php
index b6aeb37..07cc295 100755
--- a/usr/local/www/firewall_nat_server_edit.php
+++ b/usr/local/www/firewall_nat_server_edit.php
@@ -38,6 +38,18 @@
##|*MATCH=firewall_nat_server_edit.php*
##|-PRIV
+function nat_server_rules_sort() {
+ global $g, $config;
+
+ if (!is_array($config['nat']['servernat']))
+ return;
+
+ function natservercmp($a, $b) {
+ return ipcmp($a['ipaddr'], $b['ipaddr']);
+ }
+
+ usort($config['nat']['servernat'], "natservercmp");
+}
require("guiconfig.inc");
@@ -99,7 +111,8 @@ if ($_POST) {
$natent = array();
$natent['ipaddr'] = $_POST['ipaddr'];
$natent['descr'] = $_POST['descr'];
-
+
+ nat_server_rules_sort();
if (isset($id) && $a_snat[$id]) {
/* modify all inbound NAT rules with this address */
for ($i = 0; isset($config['nat']['rule'][$i]); $i++) {
OpenPOWER on IntegriCloud