base-files: add network_get_protocol() to /lib/functions/network.sh
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 16 Dec 2013 16:28:45 +0000 (16:28 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 16 Dec 2013 16:28:45 +0000 (16:28 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39099 3c298f89-4303-0410-b956-a3cf2f4a3e73

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

index 0ff11c3..7d06aa4 100644 (file)
@@ -174,8 +174,8 @@ __network_parse_ifstatus()
                        fi
                done
 
-               # parse up state, device and physdev
-               for __field in "up" "l3_device" "device"; do
+               # parse up state, proto, device and physdev
+               for __field in "up" "proto" "l3_device" "device"; do
                        if json_get_type __tmp "$__field"; then
                                __network_set_cache "${__key}_${__field}" "$__field"
                        fi
@@ -381,6 +381,11 @@ network_is_up()
        __network_device __up "$1" up && [ $__up -eq 1 ]
 }
 
+# determine the protocol of the given logical interface
+# 1: destination variable
+# 2: interface
+network_get_protocol() { __network_device "$1" "$2" proto; }
+
 # determine the layer 3 linux network device of the given logical interface
 # 1: destination variable
 # 2: interface