aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files/files/lib
diff options
context:
space:
mode:
authorJohn Crispin <john@phrozen.org>2020-11-28 11:43:47 +0100
committerJohn Crispin <john@phrozen.org>2020-12-02 07:51:36 +0100
commit9290539ca9c7b296891b1b386052c0fe308e9a62 (patch)
tree747e104534af271aaa9eae1d934f820b012f2852 /package/base-files/files/lib
parentf3926d233dba451831f4dd587fb3d01cc126df5b (diff)
downloadupstream-9290539ca9c7b296891b1b386052c0fe308e9a62.tar.gz
upstream-9290539ca9c7b296891b1b386052c0fe308e9a62.tar.bz2
upstream-9290539ca9c7b296891b1b386052c0fe308e9a62.zip
base-files: allow setting device and bridge macs
Add code for setting mac addresses inside board.json and rendering them out to uci. On switches we want to have a unique MAC on each port. With 48 port switches that would require 48 device sections in /etc/config/network. Doing so via board.json is easier. Signed-off-by: John Crispin <john@phrozen.org>
Diffstat (limited to 'package/base-files/files/lib')
-rwxr-xr-xpackage/base-files/files/lib/functions/uci-defaults.sh18
1 files changed, 17 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 39bbeda24c..2f50cd6bfd 100755
--- a/package/base-files/files/lib/functions/uci-defaults.sh
+++ b/package/base-files/files/lib/functions/uci-defaults.sh
@@ -91,7 +91,23 @@ ucidef_set_interfaces_lan_wan() {
}
ucidef_set_bridge_device() {
- json_add_string bridge "${1:switch0}"
+ json_select_object bridge
+ json_add_string name "${1:switch0}"
+ json_select ..
+}
+
+ucidef_set_bridge_mac() {
+ json_select_object bridge
+ json_add_string macaddr "${1}"
+ json_select ..
+}
+
+ucidef_set_network_device_mac() {
+ json_select_object "network-device"
+ json_select_object "${1}"
+ json_add_string macaddr "${2}"
+ json_select ..
+ json_select ..
}
_ucidef_add_switch_port() {