diff options
author | Ermal <eri@pfsense.org> | 2010-12-06 15:47:00 +0000 |
---|---|---|
committer | Ermal <eri@pfsense.org> | 2010-12-06 15:47:00 +0000 |
commit | dcadda5558ec76bf5c1d4476b618d9d1635f628b (patch) | |
tree | 8914c87b8d605e110d83efb79814d9c5ab178ef5 /etc/inc | |
parent | ed62880b045f02ef6fd2dee3f6699b269661d23a (diff) | |
download | pfsense-dcadda5558ec76bf5c1d4476b618d9d1635f628b.zip pfsense-dcadda5558ec76bf5c1d4476b618d9d1635f628b.tar.gz |
Do not reload twice carp and vips in general during an interface reload.
Diffstat (limited to 'etc/inc')
-rw-r--r-- | etc/inc/interfaces.inc | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc index 610beec..5523caa 100644 --- a/etc/inc/interfaces.inc +++ b/etc/inc/interfaces.inc @@ -2560,7 +2560,7 @@ function interface_configure($interface = "wan", $reloadall = false, $linkupeven interfaces_bring_up($wancfg['if']); if (!$g['booting']) { - interface_reload_carps($realif); + link_interface_to_vips($interface, "update"); unset($gre); $gre = link_interface_to_gre($interface); @@ -2579,8 +2579,6 @@ function interface_configure($interface = "wan", $reloadall = false, $linkupeven interface_bridge_add_member($bridgetmp, $realif); } - link_interface_to_vips($interface, "update"); - $grouptmp = link_interface_to_group($interface); if (!empty($grouptmp)) array_walk($grouptmp, 'interface_group_add_member'); @@ -3095,14 +3093,17 @@ function link_interface_to_vlans($int, $action = "") { function link_interface_to_vips($int, $action = "") { global $config; - if (is_array($config['virtualip']['vip'])) - foreach ($config['virtualip']['vip'] as $vip) - if ($int == $vip['interface']) { - if ($action == "update") + if (is_array($config['virtualip']['vip'])) { + foreach ($config['virtualip']['vip'] as $vip) { + if ($int == $vip['interface']) { + if ($action == "update") { + interface_vip_bring_down($vip); interfaces_vips_configure($int); - else - return $vip; + } else + return $vip; } + } + } } /****f* interfaces/link_interface_to_bridge |