interfaces: repair link-local read, use it directly

This commit is contained in:
Franco Fichtner 2018-11-12 12:16:06 +01:00
parent dc43eeb9c3
commit 07da679525
2 changed files with 5 additions and 10 deletions

View File

@ -3949,16 +3949,11 @@ function find_interface_ipv6_ll($interface, $exists = false)
return null;
}
$ifinfo = legacy_getall_interface_addresses($interface);
$ifinfo = legacy_get_interface_addresses($interface);
foreach ($ifinfo as $line) {
if (strstr($line, ':')) {
$parts = explode('/', $line);
if (is_linklocal($parts[0])) {
/* return first address found */
return $parts[0];
}
}
if (isset($ifinfo['ipaddr6_ll'])) {
/* return first address found */
return $ifinfo['ipaddr6_ll'];
}
return null;

View File

@ -416,7 +416,7 @@ function legacy_get_interface_addresses($ifs)
if (empty($addrs['ipaddr6']) && empty($ipv6['link-local'])) {
$addrs['ipaddr6'] = $ipv6['ipaddr'];
$addrs['subnetbits6'] = $ipv6['subnetbits'];
} elseif (empty($addrs['lladdr6']) && !empty($ipv6['link-local'])) {
} elseif (empty($addrs['ipaddr6_ll']) && !empty($ipv6['link-local'])) {
$addrs['ipaddr6_ll'] = $ipv6['ipaddr'];
$addrs['subnetbits6_ll'] = $ipv6['subnetbits'];
}