summaryrefslogtreecommitdiffstats
path: root/usr
diff options
context:
space:
mode:
authorErmal Luçi <eri@pfsense.org>2009-07-24 10:34:46 +0000
committerErmal Luçi <eri@pfsense.org>2009-07-24 10:34:46 +0000
commit171aa30d7b1b456104b9f75b98ac1d08252bc1e1 (patch)
tree8894d17c43de203040c7b905c3cd18a45d500bec /usr
parent3fc1e34f0a9fe989c2ff318305e584469a70f36b (diff)
downloadpfsense-171aa30d7b1b456104b9f75b98ac1d08252bc1e1.zip
pfsense-171aa30d7b1b456104b9f75b98ac1d08252bc1e1.tar.gz
When renaming an alias that is referenced by other aliases make the propper ajustements to reflect the changed name.
Diffstat (limited to 'usr')
-rwxr-xr-xusr/local/www/firewall_aliases_edit.php10
1 files changed, 8 insertions, 2 deletions
diff --git a/usr/local/www/firewall_aliases_edit.php b/usr/local/www/firewall_aliases_edit.php
index 2bc8deb..56159aa 100755
--- a/usr/local/www/firewall_aliases_edit.php
+++ b/usr/local/www/firewall_aliases_edit.php
@@ -241,9 +241,15 @@ if ($_POST) {
$alias['type'] = $_POST['type'];
$alias['detail'] = $final_address_details;
- if (isset($id) && $a_aliases[$id])
+ if (isset($id) && $a_aliases[$id]) {
+ if ($a_aliases[$id]['name'] <> $alias['name']) {
+ foreach ($a_aliases as $aliasid => $aliasd) {
+ if (strstr($aliasd['address'], $a_aliases[$id]['name']))
+ $a_aliases[$aliasid]['address'] = str_replace($a_aliases[$id]['name'], $alias['name'], $a_aliases[$aliasid]['address']);
+ }
+ }
$a_aliases[$id] = $alias;
- else
+ } else
$a_aliases[] = $alias;
mark_subsystem_dirty('aliases');
OpenPOWER on IntegriCloud