improve button handling
SVN-Revision: 34823
This commit is contained in:
parent
7ce4c81647
commit
59cc6d9ddd
1 changed files with 39 additions and 11 deletions
|
@ -4,21 +4,49 @@
|
|||
|
||||
. /lib/functions.sh
|
||||
|
||||
logger "$BUTTON pressed for $SEEN seconds"
|
||||
|
||||
local rfkill_state=0
|
||||
|
||||
wifi_rfkill_set() {
|
||||
uci set wireless.$1.disabled=$rfkill_state
|
||||
}
|
||||
|
||||
wifi_rfkill_check() {
|
||||
local disabled
|
||||
config_get disabled $1 disabled
|
||||
[ "$disabled" = "1" ] || rfkill_state=1
|
||||
}
|
||||
|
||||
case "${BUTTON}" in
|
||||
reset)
|
||||
logger "reset pressed"
|
||||
echo "REBOOT" > /dev/console
|
||||
sleep 3
|
||||
sync
|
||||
reboot
|
||||
if [ "$SEEN" -lt 1 ]
|
||||
then
|
||||
echo "REBOOT" > /dev/console
|
||||
sync
|
||||
reboot
|
||||
elif [ "$SEEN" -gt 5 ]
|
||||
then
|
||||
echo "FACTORY RESET" > /dev/console
|
||||
firstboot && reboot &
|
||||
fi
|
||||
;;
|
||||
BTN_1)
|
||||
logger "factory pressed"
|
||||
echo "FACTORY RESET" > /dev/console
|
||||
jffs2_mark_erase "rootfs_data"
|
||||
sync
|
||||
reboot
|
||||
|
||||
wps)
|
||||
for dir in /var/run/hostapd-*; do
|
||||
[ -d "$dir" ] || continue
|
||||
hostapd_cli -p "$dir" wps_pbc
|
||||
done
|
||||
;;
|
||||
|
||||
rfkill)
|
||||
config_load wireless
|
||||
config_foreach wifi_rfkill_check wifi-device
|
||||
config_foreach wifi_rfkill_set wifi-device
|
||||
uci commit wireless
|
||||
wifi up
|
||||
;;
|
||||
|
||||
*)
|
||||
logger "unknown button ${BUTTON}"
|
||||
;;
|
||||
|
|
Loading…
Reference in a new issue