Bug #3716 ยป interfaces.inc.patch
interfaces.inc 2014-06-14 01:25:39.216359000 +0200 | ||
---|---|---|
4177 | 4177 |
$ifdescrs = get_configured_interface_list(); |
4178 | 4178 |
foreach ($ifdescrs as $ifdescr => $ifname) { |
4179 | 4179 |
/* check IPv4 */ |
4180 | 4180 |
if(is_ipaddrv4($carp_ip)) { |
4181 | 4181 |
$interfaceip = get_interface_ip($ifname); |
4182 |
if(!is_ipaddrv4($interfaceip)) |
|
4183 |
continue; |
|
4182 | 4184 |
$subnet_bits = get_interface_subnet($ifname); |
4183 | 4185 |
$subnet_ip = gen_subnet("{$interfaceip}", "{$subnet_bits}"); |
4184 | 4186 |
if(ip_in_subnet($carp_ip, "{$subnet_ip}/{$subnet_bits}")) |
4185 | 4187 |
return $ifname; |
4186 | 4188 |
} |
4187 | 4189 |
/* Check IPv6 */ |
4188 | 4190 |
if(is_ipaddrv6($carp_ipv6)) { |
4189 | 4191 |
$interfaceipv6 = get_interface_ipv6($ifname); |
4192 |
if(!is_ipaddrv6($interfaceipv6)) |
|
4193 |
continue; |
|
4190 | 4194 |
$prefixlen = get_interface_subnetv6($ifname); |
4191 | 4195 |
if(ip_in_subnet($carp_ipv6, "{$interfaceipv6}/{$prefixlen}")) |
4192 | 4196 |
return $ifname; |
4193 | 4197 |
} |
4194 | 4198 |
} |