diff options
author | Renato Botelho <garga@FreeBSD.org> | 2015-03-11 20:54:53 -0300 |
---|---|---|
committer | Renato Botelho <garga@FreeBSD.org> | 2015-03-11 20:54:53 -0300 |
commit | 214c81026b6b13dc750ac971afce975117b6c493 (patch) | |
tree | 75738efd7a7ce353e29ce263833e127157ed6b89 /usr | |
parent | 02acc7afdf137d2da969f120e7318584e58c7993 (diff) | |
download | pfsense-214c81026b6b13dc750ac971afce975117b6c493.zip pfsense-214c81026b6b13dc750ac971afce975117b6c493.tar.gz |
Proper fix #4443, do not unset carp entry when content differ, also set correct real interface and use subnet to check IP protocol
Diffstat (limited to 'usr')
-rwxr-xr-x | usr/local/www/xmlrpc.php | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/usr/local/www/xmlrpc.php b/usr/local/www/xmlrpc.php index 7967014..a11ad5f 100755 --- a/usr/local/www/xmlrpc.php +++ b/usr/local/www/xmlrpc.php @@ -258,7 +258,6 @@ function restore_config_section_xmlrpc($raw_params) { continue; // Skip reconfiguring this vips since nothing has changed. } } - unset($oldvips["{$vip['interface']}_vip{$vip['vhid']}"]); } else if ($vip['mode'] == "ipalias" && strstr($vip['interface'], "_vip") && isset($oldvips[$vip['subnet']])) { if ($oldvips[$vip['subnet']]['content'] == "{$vip['interface']}{$vip['subnet']}{$vip['subnet_bits']}") { if (does_vip_exist($vip)) { @@ -287,7 +286,7 @@ function restore_config_section_xmlrpc($raw_params) { foreach ($oldvips as $oldvipar) { $oldvipif = get_real_interface($oldvipar['interface']); if (!empty($oldvipif)) { - if (is_ipaddrv6($oldvipif)) + if (is_ipaddrv6($oldvipar['subnet'])) mwexec("/sbin/ifconfig " . escapeshellarg($oldvipif) . " inet6 " . escapeshellarg($oldvipar['subnet']) . " delete"); else pfSense_interface_deladdress($oldvipif, $oldvipar['subnet']); |