#!/bin/sh set_default_config() { local cfg="$1" config_get type "$cfg" "type" case $type in atheros) uci set freifunk.wifi_device.channel=1 uci set freifunk.wifi_device.diversity=0 uci set freifunk.wifi_device.txantenna=1 uci set freifunk.wifi_device.rxantenna=1 uci set freifunk.wifi_device.disabled=0 uci set freifunk.wifi_device.txpower="" uci set freifunk.wifi_device.country=276 uci set freifunk.wifi_device.regdomain="0x37" uci set freifunk.wifi_device.outdoor="1" uci set freifunk.wifi_device.hwmode=11g uci set freifunk.wifi_device.distance=1000 uci set freifunk.wifi_iface=defaults uci set freifunk.wifi_iface.mode=adhoc uci set freifunk.wifi_iface.bssid="02:CA:FF:EE:BA:BE" uci set freifunk.wifi_iface.sw_merge=1 uci set freifunk.wifi_iface.mcast_rate=5500 uci set freifunk.wifi_iface.probereq=1 uci commit freifunk ;; mac80211) uci set freifunk.wifi_device.channel=1 uci set freifunk.wifi_device.diversity="" uci set freifunk.wifi_device.disabled=0 uci set freifunk.wifi_device.txpower="" uci set freifunk.wifi_device.country=DE uci set freifunk.wifi_device.distance=1000 uci set freifunk.wifi_device.htmode='HT40-' uci set freifunk.wifi_device.hwmode=11ng uci set freifunk.wifi_iface=defaults uci set freifunk.wifi_iface.mode=adhoc uci set freifunk.wifi_iface.bssid="02:CA:FF:EE:BA:BE" uci set freifunk.wifi_iface.sw_merge="" uci commit freifunk ;; broadcom) uci set freifunk.wifi_device.channel=1 uci set freifunk.wifi_device.diversity="" uci set freifunk.wifi_device.disabled=0 uci set freifunk.wifi_device.txpower="" uci set freifunk.wifi_device.country=DE uci set freifunk.wifi_device.txantenna=0 uci set freifunk.wifi_device.rxantenna=0 uci set freifunk.wifi_device.hwmode=11g uci set freifunk.wifi_device.distance=1000 uci set freifunk.wifi_iface=defaults uci set freifunk.wifi_iface.encryption=none uci set freifunk.wifi_iface.mode=adhoc uci set freifunk.wifi_iface.bssid="02:CA:FF:EE:BA:BE" uci set freifunk.wifi_iface.sw_merge="" uci commit freifunk ;; esac } ( while true ; do sleep 30 wifie=0 config_load wireless && wifie=1 if [ $wifie -eq 1 ] ; then config_foreach set_default_config wifi-device uci set freifunk.interface.dns="88.198.178.18 141.54.1.1 212.204.49.83 8.8.8.8 8.8.4.4" uci commit freifunk exit 0 fi done ) >/dev/null &