[package] base-files: add network_get_device() to network.sh
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 28 May 2012 03:24:56 +0000 (03:24 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 28 May 2012 03:24:56 +0000 (03:24 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31937 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/base-files/files/lib/functions/network.sh

index 1b42133..159da09 100644 (file)
@@ -39,3 +39,18 @@ network_get_ipaddr6() { __network_ipaddr "$1" "$2" 6 0; }
 
 network_get_subnet()  { __network_ipaddr "$1" "$2" 4 1; }
 network_get_subnet6() { __network_ipaddr "$1" "$2" 6 1; }
+
+
+network_get_device()
+{
+       local __var="$1"
+       local __iface="$2"
+
+       local __tmp="$(ubus call network.interface."$__iface" status 2>/dev/null)"
+       [ -n "$__tmp" ] || return 1
+
+       json_load "$__tmp"
+       json_get_var "$__var" device
+
+       return 0
+}