summaryrefslogtreecommitdiffstats
path: root/etc/inc
diff options
context:
space:
mode:
authorErmal <eri@pfsense.org>2010-12-06 15:47:00 +0000
committerErmal <eri@pfsense.org>2010-12-06 15:47:00 +0000
commitdcadda5558ec76bf5c1d4476b618d9d1635f628b (patch)
tree8914c87b8d605e110d83efb79814d9c5ab178ef5 /etc/inc
parented62880b045f02ef6fd2dee3f6699b269661d23a (diff)
downloadpfsense-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.inc19
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
OpenPOWER on IntegriCloud