[PATCH] fff-web: Add switch port assignment indication to ports.html

mail at adrianschmutzler.de mail at adrianschmutzler.de
So Jul 30 17:19:50 CEST 2017


Tach,

hab das Ganze jetzt noch weiter aufgebort und in einen neuen Patch gesteckt:

- Ich hatte schon länger vor, die physische Portreihenfolge zu
berücksichtigen. Dies ist nun möglich, wenn man im network.* die Variable
PORTORDER setzt (habe ich teilweise schon gemacht). Wenn nicht, erfolgt die
Anzeige wie bisher nach den internen Nummern sortiert.
- Ich habe den WAN-Port hinzugefügt, auch wenn dieser nicht im Switch sitzt
(mit gewissen Einschränkungen)
- Ich habe Christians Idee verfolgt und das VLAN-Mapping hinzugefügt
- Die Einstufung "CPU" gibt es nicht mehr. Ich überprüfe jetzt, ob ein Port
auf BATMAN UND CLIENT vorliegt und nenne ihn dann "Multi-Link". Details sind
durch das VLAN-Mapping ersichtlich,
- Die Einstellungen sind nun colorcoded.
- Ich bin gegen eine universelle Einstellbarkeit im ports.html (zumindest
solange die configurenetwork-Datei nicht komplett über den Haufen geworfen
wird). Einige Geräte (CPE, ONE-PORT) setzen ja nachträglich Werte, sodass
man hier immer Probleme kriegt klarzumachen, an welcher Stelle eine Änderung
eingreift. In diesem Kontext bitte ich auch meinen Patch
(https://pw.freifunk-franken.de/patch/407/) zu beachten, der eine
network.config mit den relevanten Settings einführt.
- Für die CPE-Geräte habe ich ein Interface zum Einstellen der Ports in der
ports.html im selben Patch bereits eingebaut, hier wurde vorher
fälschlicherweise die ONE-PORT Konfiguration angezeigt!

Der alte Patch ist damit hinfällig.

Grüße

Adrian

-----Original Message-----
From: franken-dev [mailto:franken-dev-bounces at freifunk.net] On Behalf Of
Christian Dresel
Sent: Sonntag, 30. Juli 2017 09:25
To: Adrian Schmutzler <freifunk at adrianschmutzler.de>;
franken-dev at freifunk.net
Subject: Re: [PATCH] fff-web: Add switch port assignment indication to
ports.html

Hi

ich hab die Mail auf der dev Liste endlich gefunden, ist schon länger her
als ich eigentlich dachte ;)

http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/2016-May/007280
.html

die 2 Links in der Mail gehen auch aktuell noch auch wenn das Zertifikat
schon abgelaufen ist (dieses oc verwende ich eigentlich gar nicht mehr und
wird demnächst bald gelöscht).

mfg

Christian

On 30.07.2017 09:13, Christian Dresel wrote:
> Hallo
> 
> prinzipiell gefällt mir die Idee sehr gut. Es gibt nun aber bei mir 
> auch Router wo ich z.b. einen Port im Client habe und gleichzeitig 
> getagged (VLAN tag) im Batman. Der wird mir total falsch als CPU 
> angezeigt, die config sieht so aus:
> 
> CLIENT_PORTS="0t 4 5"
> WAN_PORTS="0t 1"
> BATMAN_PORTS="0t 2 3 5t"
> 
> 0t ist wirklich CPU
> 1 ist WAN
> 2 & 3 ist normal Batman
> 4 ist Client
> 5 ist untagged Client und tagged Batman und wird aber durch dein 
> Script fälschlicherweise als CPU erkannt.
> 
> Ich hab vor Ewigkeiten mal eine Tabelle gebastelt, die drunter anzeigt 
> welches VLAN auf welchen Port liegt, ähnlich wie es im Standart LuCi 
> von OpenWRT/LEDE aussieht [1]. Ich bin grad mal grob die Mailingliste 
> durch und finde das Patch nicht, bin mir nicht mal sicher ob ich es 
> überhaupt rumgeschickt habe damals. Auch auf meinen Routern wo es 
> evtl. Sinn macht ist es nicht mehr drauf.
> 
> Ich fände es schöner, wenn man sich daran orientiert da es mehr 
> Möglichkeiten mit abdeckt. Ob man es dort auch gleich einstellbar 
> machen kann/sollte (oder nur mit einen Expertenmodus), darüber müsste 
> man noch diskutieren. Ich fände es ansich ganz schön wenn man es 
> soweit treiben könnte, dass man dort auch alles einstellen kann. Ist 
> halt doch mit einiges an Aufwand verbunden.
> 
> mfg
> 
> Christian
> 
> [1]
> https://oc.cdresel.de/public.php?service=files&t=278b671fee387e31c293e
> 372018627aa
> 
> On 30.07.2017 01:15, Adrian Schmutzler wrote:
>> Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
>>
>> Tested-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
>> ---
>>  .../fff/fff-web/files/www/ssl/cgi-bin/ports.html        | 17
++++++++++++++++-
>>  src/packages/fff/fff-web/files/www/ssl/style.css        |  5 +++++
>>  2 files changed, 21 insertions(+), 1 deletion(-)
>>
>> diff --git 
>> a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html 
>> b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
>> index 9d54be7..5e87df4 100755
>> --- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
>> +++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
>> @@ -36,6 +36,9 @@ fi
>>  		<table>
>>  			<tr>
>>  				<%
>> +				batmanports=$(swconfig dev switch0 vlan 3
show | grep 'ports:')
>> +				clientports=$(swconfig dev switch0 vlan 1
show | grep 'ports:')
>> +				wanports=$(swconfig dev switch0 vlan 2 show
| grep 'ports:')
>>  				swconfig dev switch0 show | grep "\t*link:"
| while read line ; do
>>  					line=$(echo "$line" | tr -d '\n' |
tr -d '\t')
>>  					port=$(echo "$line" | sed 's/.*
port:\([^ ]*\) .*/\1/') @@ 
>> -47,10 +50,22 @@ fi
>>  						speed="no link"
>>  						duplex=""
>>  					fi
>> +					if (echo "$clientports" | grep -q
"${port}t") || (echo "$batmanports" | grep -q "${port}t") ; then
>> +						assign="CPU"
>> +					elif echo "$clientports" | grep -q
"${port}" ; then
>> +						assign="CLIENT"
>> +					elif echo "$batmanports" | grep -q
"${port}" ; then
>> +						assign="BATMAN"
>> +					elif echo "$wanports" | grep -q
"${port}" ; then
>> +						assign="WAN"
>> +					else
>> +						assign="Unknown"
>> +					fi
>>  					port="Port ${port}"
>>  					echo "<td class=\"swport\">"
>>  					echo "<span
class=\"port\">${port}</span><br />"
>> -					echo "<img src=\"/port_${link}.png\"
alt=\"${link}\" /><br />"
>> +					echo "<img src=\"/port_${link}.png\"
alt=\"${link}\" /><br /><br />"
>> +					echo "<span
class=\"assign\">$assign</span><br />"
>>  					echo "<span class=\"stat\">$speed<br
/>$duplex</span>"
>>  					echo "</td>"
>>  				done
>> diff --git a/src/packages/fff/fff-web/files/www/ssl/style.css 
>> b/src/packages/fff/fff-web/files/www/ssl/style.css
>> index b9e0d9f..713397e 100644
>> --- a/src/packages/fff/fff-web/files/www/ssl/style.css
>> +++ b/src/packages/fff/fff-web/files/www/ssl/style.css
>> @@ -218,3 +218,8 @@ pre {
>>  .swport .stat {
>>  	font-size: 10px;
>>  }
>> +
>> +.swport .assign {
>> +	font-weight: bold;
>> +	font-size: 11px;
>> +}
>>
> 
> 
> 

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : portnewv11.png
Dateityp    : image/png
Dateigröße  : 20175 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20170730/3890c785/attachment.png>


Mehr Informationen über die Mailingliste franken-dev