aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/base-files/files/lib/functions/network.sh9
1 files changed, 7 insertions, 2 deletions
diff --git a/package/base-files/files/lib/functions/network.sh b/package/base-files/files/lib/functions/network.sh
index 0ff11c3ca1..7d06aa40e9 100644
--- a/package/base-files/files/lib/functions/network.sh
+++ b/package/base-files/files/lib/functions/network.sh
@@ -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