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

Submitted by Adrian Schmutzler on Oct. 8, 2017, 10:31 p.m.

Details

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

Commit Message

Adrian Schmutzler Oct. 8, 2017, 10:31 p.m.
Workaround!

VARIANTE 2: Use 11s mesh with correct interface name

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

Changes in v3:
 - Use 11s mesh to actually create w2mesh and not w2ibss

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..7e2fcf9
--- /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 ! wifiAddMesh "$radio" "mesh.do.not.use" ; then
+		echo "Can't add Mesh interface on $radio."
+		exit 1
+	fi
+done
+
+# vim: set noexpandtab:tabstop=4

Comments

Tim Niemeyer Oct. 9, 2017, 5:52 a.m.
Hi Adrian

Das wird es vermutlich gewesen sein. Guter Fund!

Ich probier es demnächst aus. Heut Abend ist aber erstmal Treffen in Nürnberg/Fürth.

Bezüglich der Varianten würde ich diese hier bevorzugen, da weniger geändert wird und wir damit ggfs sogar noch weitere Abhängigkeit an w2mesh erschlagen, die wir noch nicht bemerkt haben.

Tim

Am 9. Oktober 2017 00:31:07 MESZ schrieb Adrian Schmutzler <freifunk@adrianschmutzler.de>:
>Workaround!
>
>VARIANTE 2: Use 11s mesh with correct interface name
>
>This is required as configurenetwork reads the MAC addresses
>from the WiFi interfaces.
>
>Changes in v3:
> - Use 11s mesh to actually create w2mesh and not w2ibss
>
>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..7e2fcf9
>--- /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 ! wifiAddMesh "$radio" "mesh.do.not.use" ; then
>+		echo "Can't add Mesh interface on $radio."
>+		exit 1
>+	fi
>+done
>+
>+# vim: set noexpandtab:tabstop=4
Adrian Schmutzler Oct. 9, 2017, 8:56 a.m.
Finde die Variante auch besser, v.a. weil die BSSID wegfällt.

Die andere Variante ist nur für den Fall, dass wir feststellen, das 11s hier
aus irgendeinem Grund nicht geht.

> -----Original Message-----
> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf
> Of Tim Niemeyer
> Sent: Montag, 9. Oktober 2017 07:53
> To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; franken-
> dev@freifunk.net
> Subject: Re: [PATCH v3] fff-wireless: Reintroduce initial setup of
wireless
> interfaces
> 
> Hi Adrian
> 
> Das wird es vermutlich gewesen sein. Guter Fund!
> 
> Ich probier es demnächst aus. Heut Abend ist aber erstmal Treffen in
> Nürnberg/Fürth.
> 
> Bezüglich der Varianten würde ich diese hier bevorzugen, da weniger
> geändert wird und wir damit ggfs sogar noch weitere Abhängigkeit an
> w2mesh erschlagen, die wir noch nicht bemerkt haben.
> 
> Tim
> 
> Am 9. Oktober 2017 00:31:07 MESZ schrieb Adrian Schmutzler
> <freifunk@adrianschmutzler.de>:
> >Workaround!
> >
> >VARIANTE 2: Use 11s mesh with correct interface name
> >
> >This is required as configurenetwork reads the MAC addresses from the
> >WiFi interfaces.
> >
> >Changes in v3:
> > - Use 11s mesh to actually create w2mesh and not w2ibss
> >
> >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..7e2fcf9
> >--- /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 ! wifiAddMesh "$radio" "mesh.do.not.use" ; then
> >+		echo "Can't add Mesh interface on $radio."
> >+		exit 1
> >+	fi
> >+done
> >+
> >+# vim: set noexpandtab:tabstop=4
> --
> franken-dev mailing list
> franken-dev@freifunk.net
> http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
Christian Dresel Oct. 10, 2017, 1:16 p.m.
hi

hab das jetzt glaub ich auch begriffen und bin auch für diese Variante.
Da ich leider keinen Router aktuell da habe, mit dem das ganze Problem
auftritt (meine holen sich die Mac alle von nem ethX) bin ich hier mit
nem review mal vorsichtig, das soll jemand machen der so einen Router hat.

mfg

Christian

On 09.10.2017 10:56, mail@adrianschmutzler.de wrote:
> Finde die Variante auch besser, v.a. weil die BSSID wegfällt.
> 
> Die andere Variante ist nur für den Fall, dass wir feststellen, das 11s hier
> aus irgendeinem Grund nicht geht.
> 
>> -----Original Message-----
>> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf
>> Of Tim Niemeyer
>> Sent: Montag, 9. Oktober 2017 07:53
>> To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; franken-
>> dev@freifunk.net
>> Subject: Re: [PATCH v3] fff-wireless: Reintroduce initial setup of
> wireless
>> interfaces
>>
>> Hi Adrian
>>
>> Das wird es vermutlich gewesen sein. Guter Fund!
>>
>> Ich probier es demnächst aus. Heut Abend ist aber erstmal Treffen in
>> Nürnberg/Fürth.
>>
>> Bezüglich der Varianten würde ich diese hier bevorzugen, da weniger
>> geändert wird und wir damit ggfs sogar noch weitere Abhängigkeit an
>> w2mesh erschlagen, die wir noch nicht bemerkt haben.
>>
>> Tim
>>
>> Am 9. Oktober 2017 00:31:07 MESZ schrieb Adrian Schmutzler
>> <freifunk@adrianschmutzler.de>:
>>> Workaround!
>>>
>>> VARIANTE 2: Use 11s mesh with correct interface name
>>>
>>> This is required as configurenetwork reads the MAC addresses from the
>>> WiFi interfaces.
>>>
>>> Changes in v3:
>>> - Use 11s mesh to actually create w2mesh and not w2ibss
>>>
>>> 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..7e2fcf9
>>> --- /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 ! wifiAddMesh "$radio" "mesh.do.not.use" ; then
>>> +		echo "Can't add Mesh interface on $radio."
>>> +		exit 1
>>> +	fi
>>> +done
>>> +
>>> +# vim: set noexpandtab:tabstop=4
>> --
>> franken-dev mailing list
>> franken-dev@freifunk.net
>> http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
>