From patchwork Wed Oct 18 21:30:58 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [v11, 6/6] fff-config/fff-hoods: Provide a setting to use custom SSIDs From: Adrian Schmutzler X-Patchwork-Id: 605 Message-Id: <1508362258-8918-6-git-send-email-freifunk@adrianschmutzler.de> To: franken-dev@freifunk.net Date: Wed, 18 Oct 2017 23:30:58 +0200 This provides a possibility to set a custom ID for the AP and Mesh WiFi interfaces. The patch includes a script to set/reset those correctly. With this, a user can e.g. use an SSID minikaff.freifunk where he would otherwise be forced to use remotecity.freifunk, but without having to set up his own gateway. Signed-off-by: Adrian Schmutzler Tested-by: Adrian Schmutzler --- .../fff/fff-hoods/files/usr/sbin/configurehood | 6 ++++++ .../fff/fff-support/files/usr/sbin/setwifiids.sh | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100755 src/packages/fff/fff-support/files/usr/sbin/setwifiids.sh diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood index e7a6eda..01b8056 100755 --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood @@ -148,6 +148,12 @@ if [ -s /tmp/keyxchangev2data ]; then uci -q set "system.@system[0].hood=$hood" uci -q commit system + # Use custom ids if provided + customap="$(uci -q get fff.wifi.essid)" + custommesh="$(uci -q get fff.wifi.mesh_id)" + [ -n "$customap" ] && essid="$customap" + [ -n "$custommesh" ] && mesh_id="$custommesh" + if ! wifiDelAll; then echo "Can't delete current wifi setup" exit 1 diff --git a/src/packages/fff/fff-support/files/usr/sbin/setwifiids.sh b/src/packages/fff/fff-support/files/usr/sbin/setwifiids.sh new file mode 100755 index 0000000..dcb7667 --- /dev/null +++ b/src/packages/fff/fff-support/files/usr/sbin/setwifiids.sh @@ -0,0 +1,18 @@ +#!/bin/sh +# This sets a custom essid for AP (1st arg) and Mesh (2nd arg), +# resetting each to standard if not provided (no args=full reset) +# +# Supports only 802.11s mesh ID (no AdHoc) + +essid=$1 +mesh_id=$2 + +uci -q set "fff.wifi=fff" +uci -q delete "fff.wifi.essid" +uci -q delete "fff.wifi.mesh_id" + +[ -n "$essid" ] && uci -q set "fff.wifi.essid=$essid" +[ -n "$mesh_id" ] && uci -q set "fff.wifi.mesh_id=$mesh_id" +uci -q commit fff + +rm -f /www/public/keyxchangev2data # delete this, so settings will be applied during next run of configurehood