From 22234bbb2f3ea46fc61bb5adeabec1e94ccf167f Mon Sep 17 00:00:00 2001 From: Renato Botelho Date: Mon, 2 Sep 2013 08:00:07 -0300 Subject: [PATCH] Fix #3172, return_gateway_groups_array() was returning the last vip since it was using wrong variable name on iteration --- etc/inc/gwlb.inc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/etc/inc/gwlb.inc b/etc/inc/gwlb.inc index a1c86adc52..1adc751c0a 100644 --- a/etc/inc/gwlb.inc +++ b/etc/inc/gwlb.inc @@ -691,7 +691,7 @@ function return_gateway_groups_array() { list($gwname, $tier, $vipname) = explode("|", $item); if (is_ipaddr($carplist[$vipname])) { - if (!is_array($group['name'])) + if (!is_array($gwvip_arr[$group['name']])) $gwvip_arr[$group['name']] = array(); $gwvip_arr[$group['name']][$gwname] = $vipname; } @@ -763,8 +763,8 @@ function return_gateway_groups_array() { $groupmember['int'] = $int; $groupmember['gwip'] = $gatewayip; $groupmember['weight'] = isset($gateway['weight']) ? $gateway['weight'] : 1; - if (is_array($gwvip_arr[$group['name']])&& !empty($gwvip_arr[$group['name']][$gwname])) - $groupmember['vip'] = $gwvip_arr[$group['name']][$gwname]; + if (is_array($gwvip_arr[$group['name']])&& !empty($gwvip_arr[$group['name']][$member])) + $groupmember['vip'] = $gwvip_arr[$group['name']][$member]; $gateway_groups_array[$group['name']]['ipprotocol'] = $gateway['ipprotocol']; $gateway_groups_array[$group['name']][] = $groupmember; }