[PATCH 2/2] Allow initial configuration from Ethernet

mail at adrianschmutzler.de mail at adrianschmutzler.de
So Jun 10 12:24:07 CEST 2018


Hallo,

wie mündlich schon besprochen würde ich aus "download location" "target file" oder so was machen (im echo Usage).

Außerdem könnte man im sed statt ".$" ein ":$" verwenden, dann wird das letzte Zeichen nur gelöscht, wenn es wirklich ein Doppelpunkt ist. (Und nicht die letzte Stelle der IP, falls der Doppelpunkt mal nicht mehr da ist)

Der Rest sieht gut aus.

Grüße

Adrian



> -----Original Message-----
> From: franken-dev [mailto:franken-dev-bounces at freifunk.net] On Behalf
> Of Fabian Bläse
> Sent: Samstag, 9. Juni 2018 16:51
> To: franken-dev at freifunk.net
> Subject: [PATCH 2/2] Allow initial configuration from Ethernet
> 
> Signed-off-by: Fabian Bläse <fabian at blaese.de>
> ---
>  .../fff-hoods/files/usr/lib/functions/fff/hoodfile  | 21
> +++++++++++++++++++++
>  .../fff/fff-hoods/files/usr/sbin/configurehood      |  2 +-
>  2 files changed, 22 insertions(+), 1 deletion(-)
> 
> diff --git a/src/packages/fff/fff-hoods/files/usr/lib/functions/fff/hoodfile
> b/src/packages/fff/fff-hoods/files/usr/lib/functions/fff/hoodfile
> index 62487f9..6c50737 100644
> --- a/src/packages/fff/fff-hoods/files/usr/lib/functions/fff/hoodfile
> +++ b/src/packages/fff/fff-hoods/files/usr/lib/functions/fff/hoodfile
> @@ -56,6 +56,27 @@ getWirelessHoodfile() {
>      fi
>  }
> 
> +getEthernetHoodfile() {
> +    if [ $# != 1 ]
> +       then
> +               echo "Usage: getEthernetHoodfile <download-location>"
> +               return 1
> +       fi
> +    file=$1
> +
> +    echo "Trying to get hoodfile from ethernet neighbor..."
> +
> +    ethmesh_dev=$(uci -q get network.ethmesh.ifname)
> +    neighbor_addrs=$(ping6 -c2 ff02::1%${ethmesh_dev} | grep seq | cut -d "
> " -f4 | sed s/.$//g | sort | uniq)
> +
> +    for addr in $neighbor_addrs; do
> +        wget -T2 -t1 -qO "$file"
> "http://[${addr}%${ethmesh_dev}]:2342/keyxchangev2data" && return 0
> +    done
> +
> +    # got no hoodfile
> +    return 1
> +}
> +
>  getGatewayHoodfile() {
>      if [ $# != 1 ]
>  	then
> diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> index aee20e5..282e21b 100755
> --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> @@ -101,7 +101,7 @@ else
> 
>  			sleep 30 # Wait for the config AP, which may be
> created at the same time as this script has started
> 
> -			getWirelessHoodfile "$hoodfile"
> +			getEthernetHoodfile "$hoodfile" ||
> getWirelessHoodfile "$hoodfile"
> 
>  			#UPLINK: Set up uplink data on first contact:
>  			if [ -s /tmp/keyxchangev2data ]; then
> --
> 2.11.0




Mehr Informationen über die Mailingliste franken-dev