[v2] fff-wireless: Reintroduce initial setup of wireless interfaces

Submitted by Adrian Schmutzler on Oct. 8, 2017, 2:23 p.m.

Details

Message ID 1507472586-47648-1-git-send-email-freifunk@adrianschmutzler.de
State Superseded
Headers show

Commit Message

Adrian Schmutzler Oct. 8, 2017, 2:23 p.m.
Workaround!

This is required as configurenetwork reads the MAC addresses
from the WiFi interfaces.

Changes in v2:
 - Fixed call of wifiAddAP

Apply only after the KeyX2 patchset!

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 .../files/etc/uci-defaults/60-fff-wireless         | 32 ++++++++++++++++++++++
 1 file changed, 32 insertions(+)
 create mode 100644 src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-wireless

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-wireless b/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-wireless
new file mode 100644
index 0000000..8070cb4
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-wireless
@@ -0,0 +1,32 @@ 
+#!/bin/sh
+# Copyright 2016 Tim Niemeyer
+# License GPLv3
+
+. /lib/functions/fff/wireless
+
+if ! wifiDelAll; then
+	echo "Can't delete current wifi setup"
+	exit 1
+fi
+
+for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do
+	radio="$(wifiAddPhyCond "$phy" "2" "1")"
+	radio5="$(wifiAddPhyCond "$phy" "5" "36")"
+	[ -n "$radio5" ] && radio="$radio5"
+	if [ -z "$radio" ]; then
+		echo "Can't create radio for $phy"
+		exit 1
+	fi
+
+	if ! wifiAddAP "$radio" "do.not.use" "mesh" "ap" "0"; then
+		echo "Can't add AP interface on $radio."
+		exit 1
+	fi
+
+	if ! wifiAddAdHocMesh "$radio" "batman.do.not.use" "02:CA:FF:EE:BA:BE"; then
+		echo "Can't add AdHocMesh interface on $radio."
+		exit 1
+	fi
+done
+
+# vim: set noexpandtab:tabstop=4

Comments

Tim Niemeyer Oct. 8, 2017, 5:24 p.m.
Hi Adrian

Das löst das Problem leider nicht:
--- %< ---
Fixing MAC on br-mesh (mesh)                                              
+ sleep 10                                                                
+ cat /sys/class/net/w2mesh/address                                       
cat: can't open '/sys/class/net/w2mesh/address': No such file or directory
+ NEW_MACADDR=                                               
+ uci set network.mesh.macaddr=                              
+ uci commit                                                 
--- >% ---

:(

Ich befürchte wir müssen das richtig fixen. Das dauert dann zwar
länger, aber so artet das dann doch irgendwann in Zufall aus, ob es
geht oder nicht.

Tim

Am Sonntag, den 08.10.2017, 16:23 +0200 schrieb Adrian Schmutzler:
> Workaround!
> 
> This is required as configurenetwork reads the MAC addresses
> from the WiFi interfaces.
> 
> Changes in v2:
>  - Fixed call of wifiAddAP
> 
> Apply only after the KeyX2 patchset!
> 
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> ---
>  .../files/etc/uci-defaults/60-fff-wireless         | 32
> ++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>  create mode 100644 src/packages/fff/fff-wireless/files/etc/uci-
> defaults/60-fff-wireless
> 
> diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-
> fff-wireless b/src/packages/fff/fff-wireless/files/etc/uci-
> defaults/60-fff-wireless
> new file mode 100644
> index 0000000..8070cb4
> --- /dev/null
> +++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-
> wireless
> @@ -0,0 +1,32 @@
> +#!/bin/sh
> +# Copyright 2016 Tim Niemeyer
> +# License GPLv3
> +
> +. /lib/functions/fff/wireless
> +
> +if ! wifiDelAll; then
> +	echo "Can't delete current wifi setup"
> +	exit 1
> +fi
> +
> +for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do
> +	radio="$(wifiAddPhyCond "$phy" "2" "1")"
> +	radio5="$(wifiAddPhyCond "$phy" "5" "36")"
> +	[ -n "$radio5" ] && radio="$radio5"
> +	if [ -z "$radio" ]; then
> +		echo "Can't create radio for $phy"
> +		exit 1
> +	fi
> +
> +	if ! wifiAddAP "$radio" "do.not.use" "mesh" "ap" "0"; then
> +		echo "Can't add AP interface on $radio."
> +		exit 1
> +	fi
> +
> +	if ! wifiAddAdHocMesh "$radio" "batman.do.not.use"
> "02:CA:FF:EE:BA:BE"; then
> +		echo "Can't add AdHocMesh interface on $radio."
> +		exit 1
> +	fi
> +done
> +
> +# vim: set noexpandtab:tabstop=4
> -- 
> 2.7.4
>
Adrian Schmutzler Oct. 8, 2017, 6 p.m.
Auf welchem Gerät ist das denn?

On October 8, 2017 7:24:27 PM GMT+02:00, Tim Niemeyer <tim@tn-x.org> wrote:
Hi Adrian

Das löst das Problem leider nicht:
--- %< ---
Fixing MAC on br-mesh
(mesh)                                              
+ sleep
10                                                                
+ cat
/sys/class/net/w2mesh/address                                       
cat: can't open '/sys/class/net/w2mesh/address': No such file or
directory
+ NEW_MACADDR=                                               
+ uci set network.mesh.macaddr=                              
+ uci commit                                                 
--- >% ---

:(

Ich befürchte wir müssen das richtig fixen. Das dauert dann zwar
länger, aber so artet das dann doch irgendwann in Zufall aus, ob es
geht oder nicht.

Tim

Am Sonntag, den 08.10.2017, 16:23 +0200 schrieb Adrian Schmutzler:
> Workaround!
> 
> This is required as configurenetwork reads the MAC addresses
> from the WiFi interfaces.
> 
> Changes in v2:
>  - Fixed call of wifiAddAP
> 
> Apply only after the KeyX2 patchset!
> 
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> ---
>  .../files/etc/uci-defaults/60-fff-wireless         | 32
> ++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>  create mode 100644 src/packages/fff/fff-wireless/files/etc/uci-
> defaults/60-fff-wireless
> 
> diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-
> fff-wireless b/src/packages/fff/fff-wireless/files/etc/uci-
> defaults/60-fff-wireless
> new file mode 100644
> index 0000000..8070cb4
> --- /dev/null
> +++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-
> wireless
> @@ -0,0 +1,32 @@
> +#!/bin/sh
> +# Copyright 2016 Tim Niemeyer
> +# License GPLv3
> +
> +. /lib/functions/fff/wireless
> +
> +if ! wifiDelAll; then
> +	echo "Can't delete current wifi setup"
> +	exit 1
> +fi
> +
> +for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do
> +	radio="$(wifiAddPhyCond "$phy" "2" "1")"
> +	radio5="$(wifiAddPhyCond "$phy" "5" "36")"
> +	[ -n "$radio5" ] && radio="$radio5"
> +	if [ -z "$radio" ]; then
> +		echo "Can't create radio for $phy"
> +		exit 1
> +	fi
> +
> +	if ! wifiAddAP "$radio" "do.not.use" "mesh" "ap" "0"; then
> +		echo "Can't add AP interface on $radio."
> +		exit 1
> +	fi
> +
> +	if ! wifiAddAdHocMesh "$radio" "batman.do.not.use"
> "02:CA:FF:EE:BA:BE"; then
> +		echo "Can't add AdHocMesh interface on $radio."
> +		exit 1
> +	fi
> +done
> +
> +# vim: set noexpandtab:tabstop=4
> -- 
> 2.7.4
>
Tim Niemeyer Oct. 8, 2017, 6:04 p.m.
Ein wr741v4.. ich bau grad nochmal alles neu durch. Werd aber heute nicht mehr viel schaffen.

Tim

Am 8. Oktober 2017 20:00:13 MESZ schrieb Adrian Schmutzler <mail@adrianschmutzler.de>:
>Auf welchem Gerät ist das denn?
>
>On October 8, 2017 7:24:27 PM GMT+02:00, Tim Niemeyer <tim@tn-x.org>
>wrote:
>Hi Adrian
>
>Das löst das Problem leider nicht:
>--- %< ---
>Fixing MAC on br-mesh
>(mesh)                                              
>+ sleep
>10                                                                
>+ cat
>/sys/class/net/w2mesh/address                                       
>cat: can't open '/sys/class/net/w2mesh/address': No such file or
>directory
>+ NEW_MACADDR=                                               
>+ uci set network.mesh.macaddr=                              
>+ uci commit                                                 
>--- >% ---
>
>:(
>
>Ich befürchte wir müssen das richtig fixen. Das dauert dann zwar
>länger, aber so artet das dann doch irgendwann in Zufall aus, ob es
>geht oder nicht.
>
>Tim
>
>Am Sonntag, den 08.10.2017, 16:23 +0200 schrieb Adrian Schmutzler:
>> Workaround!
>> 
>> This is required as configurenetwork reads the MAC addresses
>> from the WiFi interfaces.
>> 
>> Changes in v2:
>>  - Fixed call of wifiAddAP
>> 
>> Apply only after the KeyX2 patchset!
>> 
>> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
>> ---
>>  .../files/etc/uci-defaults/60-fff-wireless         | 32
>> ++++++++++++++++++++++
>>  1 file changed, 32 insertions(+)
>>  create mode 100644 src/packages/fff/fff-wireless/files/etc/uci-
>> defaults/60-fff-wireless
>> 
>> diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-
>> fff-wireless b/src/packages/fff/fff-wireless/files/etc/uci-
>> defaults/60-fff-wireless
>> new file mode 100644
>> index 0000000..8070cb4
>> --- /dev/null
>> +++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-
>> wireless
>> @@ -0,0 +1,32 @@
>> +#!/bin/sh
>> +# Copyright 2016 Tim Niemeyer
>> +# License GPLv3
>> +
>> +. /lib/functions/fff/wireless
>> +
>> +if ! wifiDelAll; then
>> +	echo "Can't delete current wifi setup"
>> +	exit 1
>> +fi
>> +
>> +for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do
>> +	radio="$(wifiAddPhyCond "$phy" "2" "1")"
>> +	radio5="$(wifiAddPhyCond "$phy" "5" "36")"
>> +	[ -n "$radio5" ] && radio="$radio5"
>> +	if [ -z "$radio" ]; then
>> +		echo "Can't create radio for $phy"
>> +		exit 1
>> +	fi
>> +
>> +	if ! wifiAddAP "$radio" "do.not.use" "mesh" "ap" "0"; then
>> +		echo "Can't add AP interface on $radio."
>> +		exit 1
>> +	fi
>> +
>> +	if ! wifiAddAdHocMesh "$radio" "batman.do.not.use"
>> "02:CA:FF:EE:BA:BE"; then
>> +		echo "Can't add AdHocMesh interface on $radio."
>> +		exit 1
>> +	fi
>> +done
>> +
>> +# vim: set noexpandtab:tabstop=4
>> -- 
>> 2.7.4
>>
Tim Niemeyer Oct. 8, 2017, 6:56 p.m.
Am Sonntag, den 08.10.2017, 20:04 +0200 schrieb Tim Niemeyer:
> Ein wr741v4.. ich bau grad nochmal alles neu durch. Werd aber heute
> nicht mehr viel schaffen.
Lag nicht am Setup. Das ist leider wirklich kaputt.

Wir werden wohl doch die MAC in den network.<device> Files auslesen
müssen. Dort können wir das dann auf unterschiedliche Weise (für jedes
Device individuell) erledigen.

Tim

> 
> Tim
> 
> Am 8. Oktober 2017 20:00:13 MESZ schrieb Adrian Schmutzler <mail@adri
> anschmutzler.de>:
> > Auf welchem Gerät ist das denn?
> > 
> > On October 8, 2017 7:24:27 PM GMT+02:00, Tim Niemeyer <tim@tn-x.org
> > >
> > wrote:
> > Hi Adrian
> > 
> > Das löst das Problem leider nicht:
> > --- %< ---
> > Fixing MAC on br-mesh
> > (mesh)                                              
> > + sleep
> > 10                                                                
> > + cat
> > /sys/class/net/w2mesh/address                                      
> >  
> > cat: can't open '/sys/class/net/w2mesh/address': No such file or
> > directory
> > + NEW_MACADDR=                                               
> > + uci set network.mesh.macaddr=                              
> > + uci commit                                                 
> > --- >% ---
> > 
> > :(
> > 
> > Ich befürchte wir müssen das richtig fixen. Das dauert dann zwar
> > länger, aber so artet das dann doch irgendwann in Zufall aus, ob es
> > geht oder nicht.
> > 
> > Tim
> > 
> > Am Sonntag, den 08.10.2017, 16:23 +0200 schrieb Adrian Schmutzler:
> > > Workaround!
> > > 
> > > This is required as configurenetwork reads the MAC addresses
> > > from the WiFi interfaces.
> > > 
> > > Changes in v2:
> > >  - Fixed call of wifiAddAP
> > > 
> > > Apply only after the KeyX2 patchset!
> > > 
> > > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> > > ---
> > >  .../files/etc/uci-defaults/60-fff-wireless         | 32
> > > ++++++++++++++++++++++
> > >  1 file changed, 32 insertions(+)
> > >  create mode 100644 src/packages/fff/fff-wireless/files/etc/uci-
> > > defaults/60-fff-wireless
> > > 
> > > diff --git a/src/packages/fff/fff-wireless/files/etc/uci-
> > > defaults/60-
> > > fff-wireless b/src/packages/fff/fff-wireless/files/etc/uci-
> > > defaults/60-fff-wireless
> > > new file mode 100644
> > > index 0000000..8070cb4
> > > --- /dev/null
> > > +++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-
> > > fff-
> > > wireless
> > > @@ -0,0 +1,32 @@
> > > +#!/bin/sh
> > > +# Copyright 2016 Tim Niemeyer
> > > +# License GPLv3
> > > +
> > > +. /lib/functions/fff/wireless
> > > +
> > > +if ! wifiDelAll; then
> > > +	echo "Can't delete current wifi setup"
> > > +	exit 1
> > > +fi
> > > +
> > > +for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do
> > > +	radio="$(wifiAddPhyCond "$phy" "2" "1")"
> > > +	radio5="$(wifiAddPhyCond "$phy" "5" "36")"
> > > +	[ -n "$radio5" ] && radio="$radio5"
> > > +	if [ -z "$radio" ]; then
> > > +		echo "Can't create radio for $phy"
> > > +		exit 1
> > > +	fi
> > > +
> > > +	if ! wifiAddAP "$radio" "do.not.use" "mesh" "ap" "0";
> > > then
> > > +		echo "Can't add AP interface on $radio."
> > > +		exit 1
> > > +	fi
> > > +
> > > +	if ! wifiAddAdHocMesh "$radio" "batman.do.not.use"
> > > "02:CA:FF:EE:BA:BE"; then
> > > +		echo "Can't add AdHocMesh interface on $radio."
> > > +		exit 1
> > > +	fi
> > > +done
> > > +
> > > +# vim: set noexpandtab:tabstop=4
> > > -- 
> > > 2.7.4
> > >
Adrian Schmutzler Oct. 8, 2017, 9:56 p.m.
Hattest du fblaeses Patch mit drinnen?

Mit dem wird nämlich das w2mesh in w2ibss umbenannt und dann kann man es nicht mehr finden.

Ich mach hierfür noch einen Patch.

> -----Original Message-----
> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf
> Of Tim Niemeyer
> Sent: Sonntag, 8. Oktober 2017 19:24
> To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; franken-
> dev@freifunk.net
> Subject: Re: [PATCH v2] fff-wireless: Reintroduce initial setup of wireless
> interfaces
> 
> Hi Adrian
> 
> Das löst das Problem leider nicht:
> --- %< ---
> Fixing MAC on br-mesh (mesh)
> + sleep 10 cat /sys/class/net/w2mesh/address
> cat: can't open '/sys/class/net/w2mesh/address': No such file or directory
> + NEW_MACADDR= uci set network.mesh.macaddr= uci commit
> --- >% ---
> 
> :(
> 
> Ich befürchte wir müssen das richtig fixen. Das dauert dann zwar länger, aber
> so artet das dann doch irgendwann in Zufall aus, ob es geht oder nicht.
> 
> Tim
> 
> Am Sonntag, den 08.10.2017, 16:23 +0200 schrieb Adrian Schmutzler:
> > Workaround!
> >
> > This is required as configurenetwork reads the MAC addresses from the
> > WiFi interfaces.
> >
> > Changes in v2:
> >  - Fixed call of wifiAddAP
> >
> > Apply only after the KeyX2 patchset!
> >
> > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> > ---
> >  .../files/etc/uci-defaults/60-fff-wireless         | 32
> > ++++++++++++++++++++++
> >  1 file changed, 32 insertions(+)
> >  create mode 100644 src/packages/fff/fff-wireless/files/etc/uci-
> > defaults/60-fff-wireless
> >
> > diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-
> > fff-wireless b/src/packages/fff/fff-wireless/files/etc/uci-
> > defaults/60-fff-wireless
> > new file mode 100644
> > index 0000000..8070cb4
> > --- /dev/null
> > +++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/60-fff-
> > wireless
> > @@ -0,0 +1,32 @@
> > +#!/bin/sh
> > +# Copyright 2016 Tim Niemeyer
> > +# License GPLv3
> > +
> > +. /lib/functions/fff/wireless
> > +
> > +if ! wifiDelAll; then
> > +	echo "Can't delete current wifi setup"
> > +	exit 1
> > +fi
> > +
> > +for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do
> > +	radio="$(wifiAddPhyCond "$phy" "2" "1")"
> > +	radio5="$(wifiAddPhyCond "$phy" "5" "36")"
> > +	[ -n "$radio5" ] && radio="$radio5"
> > +	if [ -z "$radio" ]; then
> > +		echo "Can't create radio for $phy"
> > +		exit 1
> > +	fi
> > +
> > +	if ! wifiAddAP "$radio" "do.not.use" "mesh" "ap" "0"; then
> > +		echo "Can't add AP interface on $radio."
> > +		exit 1
> > +	fi
> > +
> > +	if ! wifiAddAdHocMesh "$radio" "batman.do.not.use"
> > "02:CA:FF:EE:BA:BE"; then
> > +		echo "Can't add AdHocMesh interface on $radio."
> > +		exit 1
> > +	fi
> > +done
> > +
> > +# vim: set noexpandtab:tabstop=4
> > --
> > 2.7.4
> >