aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files/files/lib
diff options
context:
space:
mode:
authorRafał Miłecki <rafal@milecki.pl>2021-05-14 11:09:57 +0200
committerRafał Miłecki <rafal@milecki.pl>2021-05-18 12:30:16 +0200
commitd42640e389a8b22a31fb0061c12cd9dfbddb87b8 (patch)
treef0fb4c32ef19e1c90a6d1f596fca22c31a94eb97 /package/base-files/files/lib
parent097dc943f1f9b02835c6b249b2a035679da5619f (diff)
downloadupstream-d42640e389a8b22a31fb0061c12cd9dfbddb87b8.tar.gz
upstream-d42640e389a8b22a31fb0061c12cd9dfbddb87b8.tar.bz2
upstream-d42640e389a8b22a31fb0061c12cd9dfbddb87b8.zip
base-files: use "ports" array in board.json network for bridges
Bridge aggregates multiple ports so use a more accurate name ("ports") and format (array) for storing them in board.json. Example: "network": { "lan": { "ports": [ "lan1", "lan2", "lan3", "lan4" ], "protocol": "static" }, "wan": { "ifname": "wan", "protocol": "dhcp" } } Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Diffstat (limited to 'package/base-files/files/lib')
-rw-r--r--package/base-files/files/lib/functions/uci-defaults.sh8
1 files changed, 7 insertions, 1 deletions
diff --git a/package/base-files/files/lib/functions/uci-defaults.sh b/package/base-files/files/lib/functions/uci-defaults.sh
index 134c527d8d..407a9c710f 100644
--- a/package/base-files/files/lib/functions/uci-defaults.sh
+++ b/package/base-files/files/lib/functions/uci-defaults.sh
@@ -39,7 +39,13 @@ ucidef_set_interface() {
[ -n "$opt" -a -n "$val" ] || break
- json_add_string "$opt" "$val"
+ [ "$opt" = "ifname" -a "$val" != "${val/ //}" ] && {
+ json_select_array "ports"
+ for e in $val; do json_add_string "" "$e"; done
+ json_close_array
+ } || {
+ json_add_string "$opt" "$val"
+ }
done
if ! json_is_a protocol string; then