Project

General

Profile

« Previous | Next » 

Revision f60003fa

Added by Phil Davis over 11 years ago

Return GWG IP protocol (version) when no gateway IP

This is a resubmit of an older pull request I had closed. It came up again in the forum, with a user setting up a VM environment and wondering why he cannot make policy-routing rules to a gateway group. The gateway group names did not display because all his WANs were down at the time and so the existing code was too dumb to determine the IP protocol (version 4 or 6) when none of the WANs in the gateway group actually have an IP address yet.

View differences:

etc/inc/gwlb.inc
827 827
						else if (!empty($int))
828 828
							$gatewayip = get_interface_gateway($gateway['friendlyiface']);
829 829

  
830
						if (!empty($int) && is_ipaddr($gatewayip)) {
831
							$groupmember = array();
832
							$groupmember['int']  = $int;
833
							$groupmember['gwip']  = $gatewayip;
834
							$groupmember['weight']  = isset($gateway['weight']) ? $gateway['weight'] : 1;
835
							if (is_array($gwvip_arr[$group['name']])&& !empty($gwvip_arr[$group['name']][$member]))
836
								$groupmember['vip'] = $gwvip_arr[$group['name']][$member];
830
						if (!empty($int)) {
837 831
							$gateway_groups_array[$group['name']]['ipprotocol'] = $gateway['ipprotocol'];
838
							$gateway_groups_array[$group['name']][] = $groupmember;
832
							if (is_ipaddr($gatewayip)) {
833
								$groupmember = array();
834
								$groupmember['int']  = $int;
835
								$groupmember['gwip']  = $gatewayip;
836
								$groupmember['weight']  = isset($gateway['weight']) ? $gateway['weight'] : 1;
837
								if (is_array($gwvip_arr[$group['name']])&& !empty($gwvip_arr[$group['name']][$member]))
838
									$groupmember['vip'] = $gwvip_arr[$group['name']][$member];
839
								$gateway_groups_array[$group['name']][] = $groupmember;
840
							}
839 841
						}
840 842
					}
841 843
				}

Also available in: Unified diff