[v3,4/5] fff-web: Use iw instead of iwinfo for wifiscan

Submitted by Fabian Blaese on March 15, 2020, 2:48 p.m.

Details

Message ID 20200315144820.141706-5-fabian@blaese.de
State Accepted
Headers show

Commit Message

Fabian Blaese March 15, 2020, 2:48 p.m.
This prepares the fff-web package for removal of the iwinfo binary.

Instead of using the 'iwinfo' wrapper, the nl80211 utility 'iw' is used
from now on, which is possible, because we only support devices with
nl80211 drivers anyway.

Because iw reports the frequency instead of the channel, and does not allow
easily parsing the mode and encryption parameters, the table is adjusted accordingly.

Signed-off-by: Fabian Bläse <fabian@blaese.de>
Reviewed-by: Robert Langhammer <rlanghammer@web.de>
---
 .../fff/fff-web/files/www/ssl/cgi-bin/wifiscan.html    | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/wifiscan.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/wifiscan.html
index 378896e..9905297 100755
--- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/wifiscan.html
+++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/wifiscan.html
@@ -8,18 +8,14 @@ 
 	<table class="wifitable">
 		<tr>
 			<th>Name</th>
-			<th>Kanal</th>
+			<th>Frequenz</th>
 			<th>Signal</th>
-			<th>Typ</th>
 			<th>MAC</th>
-			<th>Encryption</th>
 		</tr>
 
 <%
-iwinfo w2mesh scan |\
-	awk -v RS='' \
-	'{r = gensub(/.*Address: ([0-9A-F:]*)?.*ESSID: "?([^"\n]*)"?.*Mode: ([^ ]*).*Channel: ([0-9]*).*Signal: (-[0-9]*) dBm.*Encryption: ([^"]*).*/, \
-	"<!-- \\5 --><tr><td>\\2</td><td>\\4</td><td>\\5 dBm</td><td>\\3</td><td>\\1</td><td>\\6</td></tr>", "g"); print r;}' | sort -n | sed 's#&#\&amp;#'
+iw dev w2mesh scan | sed 's/^BSS/\nBSS/g' |\
+	awk -v RS='' '{r = gensub(/.*BSS ([0-9a-f:]*)?.*freq: ([0-9]*).*signal: (-[0-9]*\.[0-9]*) dBm.*SSID: ([^\n]*).*/, "<!-- \\3 --><tr><td>\\4</td><td>\\2 MHz</td><td>\\3 dBm</td><td>\\1</td></tr>", "g"); print r;}' | sort -n | sed 's#&#\&amp;#'
 	# The HTML comment contains the signal quality to allow sorting
 %>
 	</table>