fff-hoods: Fix fe80::1 for multiple configap interfaces

Submitted by Adrian Schmutzler on Oct. 15, 2017, 2:29 p.m.

Details

Message ID 1508077788-55084-1-git-send-email-freifunk@adrianschmutzler.de
State Accepted
Headers show

Commit Message

Adrian Schmutzler Oct. 15, 2017, 2:29 p.m.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 src/packages/fff/fff-hoods/files/usr/sbin/configurehood | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
index d00e30f..80a8df6 100755
--- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
+++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
@@ -36,17 +36,21 @@  chan5ghz="36"
 if [ -f /tmp/hiddenapflag ]; then
 	if isGatewayAvailable ; then
 
-		uci set network.configap=interface
-		uci set network.configap.proto='static'
-		uci set network.configap.ip6addr='fe80::1/64'
-		uci commit network
-
 		for radio in $(uci show wireless | sed -n 's,.*\.\([a-z0-9]*\)=wifi-device,\1,p'); do
-			if ! wifiAddAP "$radio" "config.franken.freifunk.net" "configap" "configap" "1"; then
+			channel=$(uci get "wireless.${radio}.channel")
+			iface="configap2"
+			if [ "$channel" -gt "14" ]; then
+				iface="configap5"
+			fi
+			uci set network.${iface}=interface
+			uci set network.${iface}.proto='static'
+			uci set network.${iface}.ip6addr='fe80::1/64'
+			if ! wifiAddAP "$radio" "config.franken.freifunk.net" "$iface" "configap" "1"; then
 				echo "Can't add Config interface on $radio."
 				exit 1
 			fi
 		done
+		uci commit network
 
 		wifi
 	fi

Comments

Tim Niemeyer Oct. 15, 2017, 3:55 p.m.
Am Sonntag, den 15.10.2017, 16:29 +0200 schrieb Adrian Schmutzler:
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Reviewed-by: Tim Niemeyer <tim@tn-x.org>

Tim

> ---
>  src/packages/fff/fff-hoods/files/usr/sbin/configurehood | 16
> ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
> 
> diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> index d00e30f..80a8df6 100755
> --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> @@ -36,17 +36,21 @@ chan5ghz="36"
>  if [ -f /tmp/hiddenapflag ]; then
>  	if isGatewayAvailable ; then
>  
> -		uci set network.configap=interface
> -		uci set network.configap.proto='static'
> -		uci set network.configap.ip6addr='fe80::1/64'
> -		uci commit network
> -
>  		for radio in $(uci show wireless | sed -n
> 's,.*\.\([a-z0-9]*\)=wifi-device,\1,p'); do
> -			if ! wifiAddAP "$radio"
> "config.franken.freifunk.net" "configap" "configap" "1"; then
> +			channel=$(uci get
> "wireless.${radio}.channel")
> +			iface="configap2"
> +			if [ "$channel" -gt "14" ]; then
> +				iface="configap5"
> +			fi
> +			uci set network.${iface}=interface
> +			uci set network.${iface}.proto='static'
> +			uci set
> network.${iface}.ip6addr='fe80::1/64'
> +			if ! wifiAddAP "$radio"
> "config.franken.freifunk.net" "$iface" "configap" "1"; then
>  				echo "Can't add Config interface on
> $radio."
>  				exit 1
>  			fi
>  		done
> +		uci commit network
>  
>  		wifi
>  	fi
> -- 
> 2.7.4
>
Tim Niemeyer Oct. 16, 2017, 7:45 p.m.
Am Sonntag, den 15.10.2017, 17:55 +0200 schrieb Tim Niemeyer:
> Am Sonntag, den 15.10.2017, 16:29 +0200 schrieb Adrian Schmutzler:
> > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> 
> Reviewed-by: Tim Niemeyer <tim@tn-x.org>

Und applied.

Danke

Tim

> 
> Tim
> 
> > ---
> >  src/packages/fff/fff-hoods/files/usr/sbin/configurehood | 16
> > ++++++++++------
> >  1 file changed, 10 insertions(+), 6 deletions(-)
> > 
> > diff --git a/src/packages/fff/fff-
> > hoods/files/usr/sbin/configurehood
> > b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> > index d00e30f..80a8df6 100755
> > --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> > +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> > @@ -36,17 +36,21 @@ chan5ghz="36"
> >  if [ -f /tmp/hiddenapflag ]; then
> >  	if isGatewayAvailable ; then
> >  
> > -		uci set network.configap=interface
> > -		uci set network.configap.proto='static'
> > -		uci set network.configap.ip6addr='fe80::1/64'
> > -		uci commit network
> > -
> >  		for radio in $(uci show wireless | sed -n
> > 's,.*\.\([a-z0-9]*\)=wifi-device,\1,p'); do
> > -			if ! wifiAddAP "$radio"
> > "config.franken.freifunk.net" "configap" "configap" "1"; then
> > +			channel=$(uci get
> > "wireless.${radio}.channel")
> > +			iface="configap2"
> > +			if [ "$channel" -gt "14" ]; then
> > +				iface="configap5"
> > +			fi
> > +			uci set network.${iface}=interface
> > +			uci set network.${iface}.proto='static'
> > +			uci set
> > network.${iface}.ip6addr='fe80::1/64'
> > +			if ! wifiAddAP "$radio"
> > "config.franken.freifunk.net" "$iface" "configap" "1"; then
> >  				echo "Can't add Config interface
> > on
> > $radio."
> >  				exit 1
> >  			fi
> >  		done
> > +		uci commit network
> >  
> >  		wifi
> >  	fi
> > -- 
> > 2.7.4