From 1ba31b992bcae903890f1fedee5b0d754c132df5 Mon Sep 17 00:00:00 2001 From: Ad Schellevis Date: Wed, 10 Apr 2019 18:03:06 +0200 Subject: [PATCH] routing, gateways, use new class in system_gateways.php. remove weird friendlyiface behaviour while there. for https://github.com/opnsense/core/issues/2279 --- src/www/system_gateways.php | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/src/www/system_gateways.php b/src/www/system_gateways.php index af2c5545f..b95c7863f 100644 --- a/src/www/system_gateways.php +++ b/src/www/system_gateways.php @@ -100,24 +100,19 @@ function delete_gateway_item($id, $a_gateways) mwexec("/sbin/route delete -inet6 " . escapeshellarg($a_gateways[$id]['monitor'])); } } - if (!empty($config['interfaces'][$a_gateways[$id]['friendlyiface']])) { - if ($config['interfaces'][$a_gateways[$id]['friendlyiface']]['gateway'] == $a_gateways[$id]['name']) { - unset($config['interfaces'][$a_gateways[$id]['friendlyiface']]['gateway']); + if (!empty($config['interfaces'][$a_gateways[$id]['interface']])) { + if ($config['interfaces'][$a_gateways[$id]['interface']]['gateway'] == $a_gateways[$id]['name']) { + unset($config['interfaces'][$a_gateways[$id]['interface']]['gateway']); } } unset($config['gateways']['gateway_item'][$a_gateways[$id]['attribute']]); } -// fetch gateways and let's pretend the order is safe to use... -$a_gateways = return_gateways_array(true, false, true); -$a_gateways_arr = array(); -foreach ($a_gateways as $gname => $gw) { - /* not sure why this is rewrapped, so retain the key for status here instead */ - $gw['gname'] = $gname; - $a_gateways_arr[] = $gw; -} -$a_gateways = $a_gateways_arr; - +// fetch gateway list including active default for IPv4/IPv6 +$gateways = (new \OPNsense\Routing\Gateways())->setIfconfig(legacy_interfaces_details()); +$default_gwv4 = $gateways->getDefaultGW(return_down_gateways(), "inet"); +$default_gwv6 = $gateways->getDefaultGW(return_down_gateways(), "inet6"); +$a_gateways = array_values($gateways->gatewaysIndexedByName(true, false, true)); $gateways_status = return_gateways_status(); // form processing @@ -337,10 +332,11 @@ $( document ).ready(function() { - (default)" : "";?> + (default)" : "";?> + (default)" : "";?> - + @@ -349,20 +345,20 @@ $( document ).ready(function() { - + - + - +