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

Christian Dresel fff at chrisi01.de
So Jul 30 09:25:17 CEST 2017


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=278b671fee387e31c293e372018627aa
> 
> 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   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 819 bytes
Beschreibung: OpenPGP digital signature
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20170730/28f9b752/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev