[PATCH] consistently use same webserver port for hoodfile on wifi and lan
Christian Dresel
fff at chrisi01.de
Do Okt 19 11:07:26 CEST 2017
hi
https://github.com/RedDog99/uweb
sollte alle Probleme lösen und dann ist der umgebogene Port doch sinnvoll ;)
mfg
Christian
On 19.10.2017 11:05, Robert Langhammer wrote:
> Hi,
>
> ich bin immer noch dafür, den Port hier und auf br-mesh auf 80 zu lassen.
>
> Der Druck vom Standard abzuweichen ist meines Erachtens nicht groß genug.
>
> Ein echtes Problem taucht doch erst auf, wenn eine 2. Hood auf dem
> Gateway läuft. Und das hat man mit port 2345 auch, weil sämtliche httpd
> auf nen Unix Network socket lauschen, und da gibt's kein Interface. Man
> gewinnt also nicht wirklich was.
>
> Dann lieber eine einfache Lösung am Gateway: Für jede Hood einen vhost
> auf [fe80::1]:XX und den Port pro batX umbiegen. Müsste man auch mit
> Port 2345 machen.
>
> Robert
>
>
> Am 19.10.2017 um 10:19 schrieb Fabian Bläse:
>> Signed-off-by: Fabian Bläse <fabian at blaese.de>
>> ---
>> src/packages/fff/fff-hoods/files/lib/functions/fff/keyxchange | 4 ++--
>> src/packages/fff/fff-hoods/files/usr/sbin/configurehood | 8 ++++----
>> src/packages/fff/fff-web/files/etc/uci-defaults/93-fff-uhttpd | 10 ++++++++++
>> src/packages/fff/fff-web/files/www/hood/.keep | 0
>> src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html | 2 +-
>> 5 files changed, 17 insertions(+), 7 deletions(-)
>> create mode 100644 src/packages/fff/fff-web/files/www/hood/.keep
>>
>> diff --git a/src/packages/fff/fff-hoods/files/lib/functions/fff/keyxchange b/src/packages/fff/fff-hoods/files/lib/functions/fff/keyxchange
>> index d7c2c13..a2fc651 100644
>> --- a/src/packages/fff/fff-hoods/files/lib/functions/fff/keyxchange
>> +++ b/src/packages/fff/fff-hoods/files/lib/functions/fff/keyxchange
>> @@ -6,8 +6,8 @@
>>
>> getJsonPath() {
>> jsonfile=""
>> - if [ -s /www/public/keyxchangev2data ] ; then
>> - jsonfile="/www/public/keyxchangev2data"
>> + if [ -s /www/hood/keyxchangev2data ] ; then
>> + jsonfile="/www/hood/keyxchangev2data"
>> elif [ -s /tmp/keyxchangev2data ] ; then
>> jsonfile="/tmp/keyxchangev2data"
>> fi
>> diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
>> index 88f6f53..c47b251 100755
>> --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
>> +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
>> @@ -70,7 +70,7 @@ else
>> if ! isGatewayAvailable ; then
>> #now we haven't a gateway in Range, we search for a hidden AP to get a keyxchangev2data file!
>> #first we delete all wifi settings
>> - rm -f /www/public/keyxchangev2data # delete this, so interfaces are recreated if reconnect with unchanged hood file takes place
>> + rm -f /www/hood/keyxchangev2data # delete this, so interfaces are recreated if reconnect with unchanged hood file takes place
>>
>> if ! wifiDelAll; then
>> echo "Can't delete current wifi setup"
>> @@ -97,7 +97,7 @@ else
>> # wait a moment to start the interface
>> sleep 10;
>> # and here we can download the Hoodfile from the other node
>> - wget -T15 -t5 "http://[fe80::1%w2sta]/keyxchangev2data" -O /tmp/keyxchangev2data
>> + wget -T15 -t5 "http://[fe80::1%w2sta]:2342/keyxchangev2data" -O /tmp/keyxchangev2data
>> else
>> echo "We have a Gateway in Range, we load the keyxchangev2data from fe80::1"
>> wget -T15 -t5 "http://[fe80::1%br-mesh]:2342/keyxchangev2data" -O /tmp/keyxchangev2data
>> @@ -111,7 +111,7 @@ if [ -s /tmp/keyxchangev2data ]; then
>> # but without signature, every hood file we get is valid!
>>
>> catnew="$(cat /tmp/keyxchangev2data | sed 's/"timestamp":[0-9]*/"timestamp":0/')"
>> - catold="$(cat /www/public/keyxchangev2data 2>/dev/null | sed 's/"timestamp":[0-9]*/"timestamp":0/')"
>> + catold="$(cat /www/hood/keyxchangev2data 2>/dev/null | sed 's/"timestamp":[0-9]*/"timestamp":0/')"
>> sumnew=$(echo "$catnew" | sha256sum | cut -f1 -d " ")
>> sumold=$(echo "$catold" | sha256sum | cut -f1 -d " ")
>>
>> @@ -186,7 +186,7 @@ if [ -s /tmp/keyxchangev2data ]; then
>>
>> # copy the file to webroot so that other Meshrouter can download it;
>> # copy only after all other steps so IF can be reentered if something goes wrong
>> - cp /tmp/keyxchangev2data /www/public/
>> + cp /tmp/keyxchangev2data /www/hood/
>>
>> else
>> echo "We have no new file. We do nothing. We try it again in 5 minutes...";
>> diff --git a/src/packages/fff/fff-web/files/etc/uci-defaults/93-fff-uhttpd b/src/packages/fff/fff-web/files/etc/uci-defaults/93-fff-uhttpd
>> index 28ae2b5..42376ad 100644
>> --- a/src/packages/fff/fff-web/files/etc/uci-defaults/93-fff-uhttpd
>> +++ b/src/packages/fff/fff-web/files/etc/uci-defaults/93-fff-uhttpd
>> @@ -5,6 +5,7 @@ uci batch <<EOF
>> delete uhttpd.public
>> delete uhttpd.ssl
>> delete uhttpd.px5g
>> +
>> set uhttpd.public=uhttpd
>> add_list uhttpd.public.listen_http='80'
>> set uhttpd.public.home='/www/public'
>> @@ -14,6 +15,7 @@ uci batch <<EOF
>> set uhttpd.public.network_timeout='30'
>> set uhttpd.public.tcp_keepalive='1'
>> set uhttpd.public.config='_'
>> +
>> set uhttpd.ssl=uhttpd
>> add_list uhttpd.ssl.listen_https='443'
>> set uhttpd.ssl.home='/www/ssl'
>> @@ -29,6 +31,14 @@ uci batch <<EOF
>> set uhttpd.px5g.days='1400'
>> set uhttpd.px5g.bits='2048'
>> set uhttpd.px5g.commonname='OpenWrt'
>> +
>> + set uhttpd.hood=uhttpd
>> + add_list uhttpd.hood.listen_http='2342'
>> + set uhttpd.hood.home='/www/hood'
>> + set uhttpd.hood.rfc1918_filter='1'
>> + set uhttpd.hood.network_timeout='30'
>> + set uhttpd.hood.tcp_keepalive='1'
>> + set uhttpd.hood.config='_'
>> EOF
>>
>> uci commit uhttpd
>> diff --git a/src/packages/fff/fff-web/files/www/hood/.keep b/src/packages/fff/fff-web/files/www/hood/.keep
>> new file mode 100644
>> index 0000000..e69de29
>> diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
>> index cbce768..402670d 100755
>> --- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
>> +++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
>> @@ -5,7 +5,7 @@
>> if [ "$REQUEST_METHOD" == "POST" ] ; then
>> if [ "$POST_resethood" != "" ] ; then
>> # reset hood
>> - rm /www/public/keyxchangev2data 2> /dev/null
>> + rm /www/hood/keyxchangev2data 2> /dev/null
>> MSG='<span class="green">Hood-Daten werden innerhalb von 5 Minuten neu prozessiert.</span>'
>> fi
>> fi
>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 833 bytes
Beschreibung: OpenPGP digital signature
URL : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20171019/069d2134/attachment.sig>
Mehr Informationen über die Mailingliste franken-dev