diff --git a/src/etc/inc/xmlrpc/legacy.inc b/src/etc/inc/xmlrpc/legacy.inc index 4da647fc4..99731c4dc 100644 --- a/src/etc/inc/xmlrpc/legacy.inc +++ b/src/etc/inc/xmlrpc/legacy.inc @@ -169,7 +169,7 @@ function restore_config_section_xmlrpc($new_config) $oldvips = array(); if (isset($new_config['virtualip']['vip']) && isset($config['virtualip']['vip'])) { foreach ($config['virtualip']['vip'] as $vipindex => $vip) { - if (vip_is_eligible_for_sync($vip)) { + if (!empty($vip['vhid'])) { // rc.filter_synchronize only sends CARP VIPs and IP Aliases with a VHID. Keep the rest like it was. $oldvips["{$vip['interface']}_vip{$vip['vhid']}"] = $vip ; } else { @@ -200,7 +200,7 @@ function restore_config_section_xmlrpc($new_config) $anyproxyarp = false; if (isset($config['virtualip']['vip'])) { foreach ($config['virtualip']['vip'] as $vip) { - if (vip_is_eligible_for_sync($vip) && isset($oldvips["{$vip['interface']}_vip{$vip['vhid']}"])) { + if (!empty($vip['vhid']) && isset($oldvips["{$vip['interface']}_vip{$vip['vhid']}"])) { $is_changed = false; foreach (array('password', 'advskew', 'subnet', 'subnet_bits', 'advbase') as $chk_key) { if ($oldvips["{$vip['interface']}_vip{$vip['vhid']}"][$chk_key] != $vip[$chk_key]) { @@ -254,9 +254,3 @@ function restore_config_section_xmlrpc($new_config) return true; } - -function vip_is_eligible_for_sync(array $vip) -{ - return $vip['mode'] === 'carp' || - ($vip['mode'] === 'ipalias' && isset($vip['vhid']) && $vip['vhid'] > 0); -} \ No newline at end of file diff --git a/src/etc/rc.filter_synchronize b/src/etc/rc.filter_synchronize index 297518dea..1d8e46e68 100755 --- a/src/etc/rc.filter_synchronize +++ b/src/etc/rc.filter_synchronize @@ -52,10 +52,8 @@ function get_vip_config_section(): array $temp = []; $temp['vip'] = []; foreach($config['virtualip']['vip'] as $section) { - if ($section['mode'] === 'carp' || - ($section['mode'] === 'ipalias' && isset($section['vhid']) && $section['vhid'] > 0) - ) { - if (!empty($section['advskew'])) { + if (!empty($section['vhid'])) { + if (isset($section['advskew']) && $section['advskew'] !== '') { $section['advskew'] = min(intval($section['advskew']) + 100, 254); } $temp['vip'][] = $section;