1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-28 09:31:51 +02:00
openwrt-xburst/package/base-files/default/sbin/wifi
nbd 8b9fd7eb0b work around a busybox bug
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4075 3c298f89-4303-0410-b956-a3cf2f4a3e73
2006-06-25 16:24:45 +00:00

48 lines
1005 B
Bash
Executable File

#!/bin/sh
. /etc/functions.sh
config_get_bool() {
local _tmp
config_get "$1" "$2" "$3"
eval "_tmp=\$$1"
case "$_tmp" in
1|on|enabled) eval "$1=1";;
0|off|disabled) eval "$1=0";;
*) eval "$1=${4:-0}";;
esac
}
config_cb() {
config_get TYPE "$CONFIG_SECTION" TYPE
case "$TYPE" in
wifi-device)
append DEVICES "$CONFIG_SECTION"
;;
wifi-iface)
config_get device "$CONFIG_SECTION" device
config_get vifs "$device" vifs
append vifs "$CONFIG_SECTION"
config_set "$device" vifs "$vifs"
;;
esac
}
config_load wireless
[ -d /lib/wifi -a -n "$(ls /lib/wifi/*.sh 2>&-)" ] && {
for script in /lib/wifi/*.sh; do
. $script
done
}
for device in $DEVICES; do (
config_get type "$device" type
eval "type setup_$type" 2>/dev/null >/dev/null && {
eval "scan_$type '$device'"
eval "setup_$type '$device'" && {
# TODO: set up network settings
/bin/true
} || echo "$device($type): Setup failed" || true
} || echo "$device($type): Interface type not supported"
); done