|
@@ -6,7 +6,7 @@
|
|
|
|
|
|
usage() {
|
|
|
cat <<EOF
|
|
|
-Usage: $0 [config|up|down|reconf|reload|status]
|
|
|
+Usage: $0 [config|up|down|reconf|reload|status|isup]
|
|
|
enables (default), disables or configures devices not yet configured.
|
|
|
EOF
|
|
|
exit 1
|
|
@@ -21,6 +21,22 @@ ubus_wifi_cmd() {
|
|
|
ubus call network.wireless "$cmd" "$(json_dump)"
|
|
|
}
|
|
|
|
|
|
+wifi_isup() {
|
|
|
+ local dev="$1"
|
|
|
+
|
|
|
+ json_load "$(ubus_wifi_cmd "status" "$dev")"
|
|
|
+ json_get_keys devices
|
|
|
+
|
|
|
+ for device in $devices; do
|
|
|
+ json_select "$device"
|
|
|
+ json_get_var up up
|
|
|
+ [ $up -eq 0 ] && return 1
|
|
|
+ json_select ..
|
|
|
+ done
|
|
|
+
|
|
|
+ return 0
|
|
|
+}
|
|
|
+
|
|
|
find_net_config() {(
|
|
|
local vif="$1"
|
|
|
local cfg
|
|
@@ -245,6 +261,7 @@ case "$1" in
|
|
|
detect) wifi_detect_notice ;;
|
|
|
config) wifi_config ;;
|
|
|
status) ubus_wifi_cmd "status" "$2";;
|
|
|
+ isup) wifi_isup "$2"; exit $?;;
|
|
|
reload) wifi_reload "$2";;
|
|
|
reload_legacy) wifi_reload_legacy "$2";;
|
|
|
--help|help) usage;;
|