summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xusr/local/www/firewall_nat.php7
1 files changed, 6 insertions, 1 deletions
diff --git a/usr/local/www/firewall_nat.php b/usr/local/www/firewall_nat.php
index 4419f48..9b54db2 100755
--- a/usr/local/www/firewall_nat.php
+++ b/usr/local/www/firewall_nat.php
@@ -37,7 +37,6 @@ if (!is_array($config['nat']['rule']))
$config['nat']['rule'] = array();
$a_nat = &$config['nat']['rule'];
-//nat_rules_sort();
if ($_POST) {
@@ -71,6 +70,12 @@ if (isset($_POST['del_x'])) {
/* delete selected rules */
if (is_array($_POST['rule']) && count($_POST['rule'])) {
foreach ($_POST['rule'] as $rulei) {
+ $target = $rule['target'];
+ $helpers = exec("/bin/ps auwx | grep pftpx | grep {$target} | grep -v grep | cut -d\" \" -f5");
+ if(!$helpers) {
+ /* install a pftpx helper, do not set a rule */
+ mwexec("/bin/kill {$helpers}");
+ }
unset($a_nat[$rulei]);
}
write_config();
OpenPOWER on IntegriCloud