From 1ba7a81ba017fb5f49c3775e7f1117b335bea211 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ermal=20Lu=E7i?= Date: Sun, 15 Nov 2009 20:49:11 +0000 Subject: Propperly fix the special case of proxyarp vip deleteion. With comments from cbuechler@. --- usr/local/www/firewall_virtual_ip.php | 10 ++++++++-- 1 file 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"); -- cgit v1.1