diff --git a/src/etc/inc/interfaces.inc b/src/etc/inc/interfaces.inc index c936cc2ce..a63c29966 100644 --- a/src/etc/inc/interfaces.inc +++ b/src/etc/inc/interfaces.inc @@ -4581,19 +4581,15 @@ function interfaces_primary_address($interface, $ifconfig_details = null) { $ifcfgip = $network = $subnetbits = null; - $interfaces_a = config_read_array('interfaces'); - - if (!empty($interfaces_a[$interface])) { - foreach (interfaces_addresses($interface, false, $ifconfig_details) as $addr) { - if ($addr['family'] != 'inet' || $addr['alias']) { - continue; - } - - $network = gen_subnet($addr['address'], $addr['bits']) . "/{$addr['bits']}"; - $subnetbits = $addr['bits']; - $ifcfgip = $addr['address']; - break; /* all done */ + foreach (interfaces_addresses($interface, false, $ifconfig_details) as $addr) { + if ($addr['family'] != 'inet' || $addr['alias']) { + continue; } + + $network = gen_subnet($addr['address'], $addr['bits']) . "/{$addr['bits']}"; + $subnetbits = $addr['bits']; + $ifcfgip = $addr['address']; + break; /* all done */ } return [ $ifcfgip, $network, $subnetbits ]; @@ -4605,22 +4601,20 @@ function interfaces_primary_address6($interface, $ifconfig_details = null) $interfaces_a = config_read_array('interfaces'); - if (!empty($interfaces_a[$interface])) { - if (isset($interfaces_a[$interface]['dhcp6prefixonly'])) { - /* extend the search scope for a viable GUA to tracking interfaces */ - $interface = array_merge([$interface], array_keys(link_interface_to_track6($interface))); + if (isset($interfaces_a[$interface]['dhcp6prefixonly'])) { + /* extend the search scope for a viable GUA to tracking interfaces */ + $interface = array_merge([$interface], array_keys(link_interface_to_track6($interface))); + } + + foreach (interfaces_addresses($interface, false, $ifconfig_details) as $addr) { + if ($addr['family'] != 'inet6' || $addr['deprecated'] || $addr['tentative'] || $addr['alias'] || $addr['scope']) { + continue; } - foreach (interfaces_addresses($interface, false, $ifconfig_details) as $addr) { - if ($addr['family'] != 'inet6' || $addr['deprecated'] || $addr['tentative'] || $addr['alias'] || $addr['scope']) { - continue; - } - - $networkv6 = gen_subnetv6($addr['address'], $addr['bits']) . "/{$addr['bits']}"; - $subnetbitsv6 = $addr['bits']; - $ifcfgipv6 = $addr['address']; - break; /* all done */ - } + $networkv6 = gen_subnetv6($addr['address'], $addr['bits']) . "/{$addr['bits']}"; + $subnetbitsv6 = $addr['bits']; + $ifcfgipv6 = $addr['address']; + break; /* all done */ } return [ $ifcfgipv6, $networkv6, $subnetbitsv6 ]; @@ -4630,19 +4624,15 @@ function interfaces_scoped_address6($interface, $ifconfig_details = null) { $ifcfgipv6 = $networkv6 = $subnetbitsv6 = null; - $interfaces_a = config_read_array('interfaces'); - - if (!empty($interfaces_a[$interface])) { - foreach (interfaces_addresses($interface, false, $ifconfig_details) as $addr) { - if ($addr['family'] != 'inet6' || $addr['deprecated'] || $addr['tentative'] || $addr['alias'] || $addr['scope']) { - continue; - } - - $networkv6 = gen_subnetv6($addr['address'], $addr['bits']) . "/{$addr['bits']}"; - $subnetbitsv6 = $addr['bits']; - $ifcfgipv6 = "{$addr['address']}%{$addr['name']}"; - break; /* all done */ + foreach (interfaces_addresses($interface, false, $ifconfig_details) as $addr) { + if ($addr['family'] != 'inet6' || $addr['deprecated'] || $addr['tentative'] || $addr['alias'] || $addr['scope']) { + continue; } + + $networkv6 = gen_subnetv6($addr['address'], $addr['bits']) . "/{$addr['bits']}"; + $subnetbitsv6 = $addr['bits']; + $ifcfgipv6 = "{$addr['address']}%{$addr['name']}"; + break; /* all done */ } return [ $ifcfgipv6, $networkv6, $subnetbitsv6 ];