summaryrefslogtreecommitdiffstats
path: root/usr/local/www/firewall_virtual_ip.php
diff options
context:
space:
mode:
authorErmal Luçi <eri@pfsense.org>2009-11-15 20:49:11 +0000
committerErmal Luçi <eri@pfsense.org>2009-11-15 20:49:11 +0000
commit1ba7a81ba017fb5f49c3775e7f1117b335bea211 (patch)
treecc76d08dcc63b628eb548201454341f21d8c56b3 /usr/local/www/firewall_virtual_ip.php
parentd9d95b0a30c6b37c3525ee38d99495c63f7044f6 (diff)
downloadpfsense-1ba7a81ba017fb5f49c3775e7f1117b335bea211.zip
pfsense-1ba7a81ba017fb5f49c3775e7f1117b335bea211.tar.gz
Propperly fix the special case of proxyarp vip deleteion. With comments from cbuechler@.
Diffstat (limited to 'usr/local/www/firewall_virtual_ip.php')
-rwxr-xr-xusr/local/www/firewall_virtual_ip.php10
1 files changed, 8 insertions, 2 deletions
diff --git a/usr/local/www/firewall_virtual_ip.php b/usr/local/www/firewall_virtual_ip.php
index dc54f8f..46df4f8 100755
--- a/usr/local/www/firewall_virtual_ip.php
+++ b/usr/local/www/firewall_virtual_ip.php
@@ -101,8 +101,14 @@ if ($_GET['act'] == "del") {
}
if (!$input_errors) {
- interface_vip_bring_down($a_vip[$_GET['id']]);
- unset($a_vip[$_GET['id']]);
+ // Special case since every proxyarp vip is handled by the same daemon.
+ if ($a_vip[$_GET['id']]['mode'] == "proxyarp") {
+ unset($a_vip[$_GET['id']]);
+ interface_proxyarp_configure();
+ } else {
+ interface_vip_bring_down($a_vip[$_GET['id']]);
+ unset($a_vip[$_GET['id']]);
+ }
write_config();
mark_subsystem_dirty('vip');
header("Location: firewall_virtual_ip.php");
OpenPOWER on IntegriCloud