mirror of
https://dev.iopsys.eu/feed/iopsys.git
synced 2025-12-10 07:44:50 +01:00
wifimngr: hotplug script handling wifi and wps button press
This commit is contained in:
parent
f87a160b98
commit
120785335c
2 changed files with 39 additions and 0 deletions
|
|
@ -45,6 +45,8 @@ define Package/wifimngr/install
|
|||
# $(INSTALL_BIN) ./files/*-uci-wireless $(1)/lib/upgrade/post-rootfs-fixup.d
|
||||
$(INSTALL_DIR) $(1)/usr/sbin
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/wifimngr $(1)/usr/sbin/
|
||||
$(INSTALL_DIR) $(1)/etc/hotplug.d/button
|
||||
$(INSTALL_BIN) ./files/wifi.button.hotplug $(1)/etc/hotplug.d/button/05-wifi
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,wifimngr))
|
||||
|
|
|
|||
37
wifimngr/files/wifi.button.hotplug
Normal file
37
wifimngr/files/wifi.button.hotplug
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
#!/bin/sh
|
||||
|
||||
. /lib/functions.sh
|
||||
|
||||
wifi_onoff() {
|
||||
local devices="$(uci show wireless | grep '=wifi-device' | awk -F'[.,=]' '{print$2}')"
|
||||
local wldisabled="0"
|
||||
|
||||
for dev in $devices; do
|
||||
wldisabled="$(uci -q get wireless.$dev.disabled)"
|
||||
wldisabled=${wldisabled:-0}
|
||||
if [ "$wldisabled" == "1" ]; then
|
||||
uci -q set wireless.$dev.disabled=0
|
||||
else
|
||||
uci -q set wireless.$dev.disabled=1
|
||||
fi
|
||||
done
|
||||
uci commit wireless
|
||||
killall -9 wifi 2>/dev/null
|
||||
/sbin/wifi reload &
|
||||
}
|
||||
|
||||
case "$ACTION" in
|
||||
add|register)
|
||||
[ "wifibutton" == "$INTERFACE" ] && {
|
||||
[ -e "/tmp/wps_active" ] && return
|
||||
echo "WiFi button is pressed" > /dev/console
|
||||
wifi_onoff
|
||||
}
|
||||
[ "wpsbutton" == "$INTERFACE" ] && {
|
||||
[ -e "/tmp/wps_active" ] && return
|
||||
echo "WPS button is pressed" > /dev/console
|
||||
ubus call wifi.wps start
|
||||
}
|
||||
;;
|
||||
esac
|
||||
|
||||
Loading…
Add table
Reference in a new issue