Message ID | 1502609639-4215-1-git-send-email-fff@chrisi01.de |
---|---|
State | Superseded |
Headers | show |
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 index 59239b3..0db9396 100644 --- 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 @@ -29,13 +29,23 @@ for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do fi fi - if ! wifiAddAP "$radio" "$ESSID_AP"; then - echo "Can't add AP interface on $radio0." + if ! wifiAddAP "$radio" "$ESSID_AP" "0"; then + echo "Can't add AP interface on $radio." exit 1 fi + if ! wifiAddAP "$radio" "config.franken.freifunk.net" "1"; then + echo "Can't add AP interface on $radio." + exit 1 + else + uci set network.dezkey=interface + uci set network.dezkey.proto='static' + uci set network.dezkey.ipaddr='192.168.214.1' + uci set network.dezkey.netmask='255.255.255.0' + fi + if ! wifiAddAdHocMesh "$radio" "$ESSID_MESH" "$BSSID_MESH"; then - echo "Can't add AP interface on $radio0." + echo "Can't add Mesh interface on $radio." exit 1 fi done diff --git a/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless b/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless index 59c8ce2..95a9ec0 100644 --- a/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless +++ b/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless @@ -85,9 +85,9 @@ wifiAddAdHocMesh() { } wifiAddAP() { - if [ $# -ne "2" ] + if [ $# -ne "3" ] then - echo "Usage: wifiAddAP <radio> <essid>" + echo "Usage: wifiAddAP <radio> <essid> <hidden>" return 1 fi @@ -95,18 +95,22 @@ wifiAddAP() { local essid=$2 local channel=$(uci get "wireless.${radio}.channel") - local iface="w2ap" - if [ "$channel" -gt "14" ]; then - iface="w5ap" - fi - uci batch <<-__EOF__ - set wireless.${iface}='wifi-iface' - set wireless.${iface}.device='${radio}' - set wireless.${iface}.network='mesh' - set wireless.${iface}.ifname='${iface}' - set wireless.${iface}.mode='ap' - set wireless.${iface}.ssid='${essid}' - set wireless.${iface}.encryption='none' + + uci set wireless.${iface}='wifi-iface' + uci set wireless.${iface}.device='${radio}' + uci set wireless.${iface}.network='mesh' + if [ "$channel" -gt "14" ]; then + uci set wireless.${iface}.ifname='w5ap' + fi + if [ "$channel" -lt "14" ]; then + uci set wireless.${iface}.ifname='w2ap' + fi + uci set wireless.${iface}.mode='ap' + uci set wireless.${iface}.ssid='${essid}' + uci set wireless.${iface}.encryption='none' + if [ $3 -eq "1" ]; then + uci set wireless.${iface}.hidden='1' + fi commit wireless __EOF__
Hi das wäre eine andere Variante, ich bin mir aktuell unschlüssig was schöner ist. Achtung, das hier ist komplett ungetestet! Soll nur zum zeigen der anderen Idee herhalten. mfg Christian On 13.08.2017 09:33, Christian Dresel wrote: > and fix a little variable bug in 60-fff-wireless > > Signed-off-by: Christian Dresel <fff@chrisi01.de> > --- > .../files/etc/uci-defaults/60-fff-wireless | 16 +++++++++-- > .../fff-wireless/files/lib/functions/fff/wireless | 32 ++++++++++++---------- > 2 files changed, 31 insertions(+), 17 deletions(-) > > 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 > index 59239b3..0db9396 100644 > --- 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 > @@ -29,13 +29,23 @@ for phy in $(iw phy | awk '/^Wiphy/{ print $2 }'); do > fi > fi > > - if ! wifiAddAP "$radio" "$ESSID_AP"; then > - echo "Can't add AP interface on $radio0." > + if ! wifiAddAP "$radio" "$ESSID_AP" "0"; then > + echo "Can't add AP interface on $radio." > exit 1 > fi > > + if ! wifiAddAP "$radio" "config.franken.freifunk.net" "1"; then > + echo "Can't add AP interface on $radio." > + exit 1 > + else > + uci set network.dezkey=interface > + uci set network.dezkey.proto='static' > + uci set network.dezkey.ipaddr='192.168.214.1' > + uci set network.dezkey.netmask='255.255.255.0' > + fi > + > if ! wifiAddAdHocMesh "$radio" "$ESSID_MESH" "$BSSID_MESH"; then > - echo "Can't add AP interface on $radio0." > + echo "Can't add Mesh interface on $radio." > exit 1 > fi > done > diff --git a/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless b/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless > index 59c8ce2..95a9ec0 100644 > --- a/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless > +++ b/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless > @@ -85,9 +85,9 @@ wifiAddAdHocMesh() { > } > > wifiAddAP() { > - if [ $# -ne "2" ] > + if [ $# -ne "3" ] > then > - echo "Usage: wifiAddAP <radio> <essid>" > + echo "Usage: wifiAddAP <radio> <essid> <hidden>" > return 1 > fi > > @@ -95,18 +95,22 @@ wifiAddAP() { > local essid=$2 > > local channel=$(uci get "wireless.${radio}.channel") > - local iface="w2ap" > - if [ "$channel" -gt "14" ]; then > - iface="w5ap" > - fi > - uci batch <<-__EOF__ > - set wireless.${iface}='wifi-iface' > - set wireless.${iface}.device='${radio}' > - set wireless.${iface}.network='mesh' > - set wireless.${iface}.ifname='${iface}' > - set wireless.${iface}.mode='ap' > - set wireless.${iface}.ssid='${essid}' > - set wireless.${iface}.encryption='none' > + > + uci set wireless.${iface}='wifi-iface' > + uci set wireless.${iface}.device='${radio}' > + uci set wireless.${iface}.network='mesh' > + if [ "$channel" -gt "14" ]; then > + uci set wireless.${iface}.ifname='w5ap' > + fi > + if [ "$channel" -lt "14" ]; then > + uci set wireless.${iface}.ifname='w2ap' > + fi > + uci set wireless.${iface}.mode='ap' > + uci set wireless.${iface}.ssid='${essid}' > + uci set wireless.${iface}.encryption='none' > + if [ $3 -eq "1" ]; then > + uci set wireless.${iface}.hidden='1' > + fi > > commit wireless > __EOF__ >
and fix a little variable bug in 60-fff-wireless Signed-off-by: Christian Dresel <fff@chrisi01.de> --- .../files/etc/uci-defaults/60-fff-wireless | 16 +++++++++-- .../fff-wireless/files/lib/functions/fff/wireless | 32 ++++++++++++---------- 2 files changed, 31 insertions(+), 17 deletions(-)