summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChris Buechler <cmb@pfsense.org>2016-06-21 19:39:31 -0500
committerChris Buechler <cmb@pfsense.org>2016-06-21 19:40:11 -0500
commitd75c55fbe2f98dfe782dfc9dc22f76765e4ef3c2 (patch)
treef394b92aaf168eb06781c757a5bcc656dde6512a /src
parent68126224e8cf576fb0a01b542d5ce65a2b8476b0 (diff)
downloadpfsense-d75c55fbe2f98dfe782dfc9dc22f76765e4ef3c2.zip
pfsense-d75c55fbe2f98dfe782dfc9dc22f76765e4ef3c2.tar.gz
Only call interfaces_vips_configure once if it's needed, rather than doing the same thing over and over for every VIP on an interface. Ticket #6515
Diffstat (limited to 'src')
-rw-r--r--src/etc/inc/interfaces.inc6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/etc/inc/interfaces.inc b/src/etc/inc/interfaces.inc
index 0e3fb78..8ad6acc 100644
--- a/src/etc/inc/interfaces.inc
+++ b/src/etc/inc/interfaces.inc
@@ -5062,6 +5062,7 @@ function link_interface_to_vlans($int, $action = "") {
function link_interface_to_vips($int, $action = "", $vhid = '') {
global $config;
+ $updatevips = false;
if (is_array($config['virtualip']['vip'])) {
$result = array();
foreach ($config['virtualip']['vip'] as $vip) {
@@ -5074,7 +5075,7 @@ function link_interface_to_vips($int, $action = "", $vhid = '') {
continue;
}
if ($action == "update") {
- interfaces_vips_configure($int);
+ $updatevips = true;
} else {
if (empty($vhid) || ($vhid == $vip['vhid']) ||
substr($vip['interface'], 0, 4) == "_vip") {
@@ -5082,6 +5083,9 @@ function link_interface_to_vips($int, $action = "", $vhid = '') {
}
}
}
+ if ($updatevips === true) {
+ interfaces_vips_configure($int);
+ }
return $result;
}
OpenPOWER on IntegriCloud