[PATCH v2] fff-hoods: Fix case of missing keyxchangev2data

Tim Niemeyer tim at tn-x.org
So Okt 15 18:43:17 CEST 2017


Hi Adrian

Ich bin begeistert.. Es in eine Funktion auszulagern ist natürlich der
optimale Weg.

Sollten noch weitere Review-Kommentare kommen, bau doch bitte diese
Kleinigkeit unten mit ein. Dann kannst du gleich das Reviewed-by von
mir mit an den Patch dran hängen. Wenn keine weiteren Kommentare
kommen, dann würde ich das beim Applien ergänzen.

Reviewed-by: Tim Niemeyer <tim at tn-x.org>

Am Sonntag, den 15.10.2017, 18:00 +0200 schrieb Adrian Schmutzler:
> This fixes a missing /tmp/keyxchangev2data due to gateway
> misconfiguration.
> 
> Changes in v2:
>  - First set filename, then read json
>  - Move filename evaluation to function
> 
> Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> ---
>  .../fff/fff-hoods/files/lib/functions/fff/keyxchange     | 16
> ++++++++++++++--
>  src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html |  7 ++++
> ---
>  2 files changed, 18 insertions(+), 5 deletions(-)
> 
> 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 be27e5a..9aedc3c 100644
> --- a/src/packages/fff/fff-hoods/files/lib/functions/fff/keyxchange
> +++ b/src/packages/fff/fff-hoods/files/lib/functions/fff/keyxchange
> @@ -4,9 +4,21 @@
>  
>  . /usr/share/libubox/jshn.sh
>  
> +getJsonPath() {
> +	jsonfile=""
> +	if [ -s /www/public/keyxchangev2data ] ; then
> +		jsonfile="/www/public/keyxchangev2data"
> +	elif [ -s /tmp/keyxchangev2data ] ; then
> +		jsonfile="/tmp/keyxchangev2data"
> +	fi
> +	echo "$jsonfile"
> +}
> +
>  getUpgradePath() {
> -	if [ -s /tmp/keyxchangev2data ]; then
> -		json_load "$(cat /tmp/keyxchangev2data)"
> +	jsonfile="$(getJsonPath)"
> +
> +	if [ -n "$jsonfile" ] ; then
> +		json_load "$(cat $jsonfile)"
                                 ^-- SC2086: Double quote to prevent globbing and word splitting.
Tim

>  		json_select hood
>  		json_get_var upath upgrade_path
>  		echo "$upath"
> 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 1569c01..64c89f7 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
> @@ -48,9 +48,10 @@ else
>  fi
>  
>  # read from keyxchangev2data
> -. /usr/share/libubox/jshn.sh
> -if [ -s /tmp/keyxchangev2data ] ; then
> -	json_load "$(cat /tmp/keyxchangev2data)"
> +. /lib/functions/fff/keyxchange
> +jsonfile="$(getJsonPath)"
> +if [ -n "$jsonfile" ] ; then
> +	json_load "$(cat $jsonfile)"
>  	json_select hood
>  	json_get_var mesh_type2 mesh_type2
>  	json_get_var mesh_type5 mesh_type5
> -- 
> 2.7.4
> 
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 488 bytes
Beschreibung: This is a digitally signed message part
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20171015/caee7896/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev