Commit 17a9a263 authored by Ad Schellevis's avatar Ad Schellevis

interfaces, refactor and rename get_interface_info() to remove most of the...

interfaces, refactor and rename get_interface_info() to remove most of the performance bottlenecks. for https://github.com/opnsense/core/issues/1662
parent de5ff59f
This diff is collapsed.
...@@ -65,8 +65,9 @@ include("head.inc"); ...@@ -65,8 +65,9 @@ include("head.inc");
<?php <?php
$mac_man = json_decode(configd_run("interface list macdb json"), true); $mac_man = json_decode(configd_run("interface list macdb json"), true);
$pfctl_counters = json_decode(configd_run("filter list counters json"), true); $pfctl_counters = json_decode(configd_run("filter list counters json"), true);
$ifsinfo = get_interfaces_info();
foreach (get_configured_interface_with_descr(false, true) as $ifdescr => $ifname): foreach (get_configured_interface_with_descr(false, true) as $ifdescr => $ifname):
$ifinfo = get_interface_info($ifdescr); $ifinfo = $ifsinfo[$ifdescr];
$ifpfcounters = $pfctl_counters[$ifinfo['if']]; $ifpfcounters = $pfctl_counters[$ifinfo['if']];
legacy_html_escape_form_data($ifinfo); legacy_html_escape_form_data($ifinfo);
$ifdescr = htmlspecialchars($ifdescr); $ifdescr = htmlspecialchars($ifdescr);
......
...@@ -31,8 +31,9 @@ ...@@ -31,8 +31,9 @@
function interfaces_api() function interfaces_api()
{ {
$result = array(); $result = array();
$ifsinfo = get_interfaces_info();
foreach (get_configured_interface_with_descr() as $ifdescr => $ifname) { foreach (get_configured_interface_with_descr() as $ifdescr => $ifname) {
$ifinfo = get_interface_info($ifdescr); $ifinfo = $ifsinfo[$ifdescr];
$interfaceItem = array(); $interfaceItem = array();
$interfaceItem['inpkts'] = $ifinfo['inpkts']; $interfaceItem['inpkts'] = $ifinfo['inpkts'];
$interfaceItem['outpkts'] = $ifinfo['outpkts']; $interfaceItem['outpkts'] = $ifinfo['outpkts'];
......
...@@ -68,8 +68,9 @@ require_once("interfaces.inc"); ...@@ -68,8 +68,9 @@ require_once("interfaces.inc");
<table class="table table-striped table-condensed" data-plugin="interfaces" data-callback="interface_widget_update"> <table class="table table-striped table-condensed" data-plugin="interfaces" data-callback="interface_widget_update">
<tbody> <tbody>
<?php <?php
$ifsinfo = get_interfaces_info();
foreach (get_configured_interface_with_descr() as $ifdescr => $ifname): foreach (get_configured_interface_with_descr() as $ifdescr => $ifname):
$ifinfo = get_interface_info($ifdescr); $ifinfo = $ifsinfo[$ifdescr];
$iswireless = is_interface_wireless($ifdescr);?> $iswireless = is_interface_wireless($ifdescr);?>
<tr id="interface_widget_item_<?=$ifname;?>"> <tr id="interface_widget_item_<?=$ifname;?>">
<td> <td>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment