瀏覽代碼

base-files: fix wrong ucidef_set_network_device_mac network-device entry

The ucidef_set_network_device_* functions in uci-defaults.sh disagree
on whether to use "network-device" or "network_device" in board.json.
With the additional caveat that jshn will translate hyphens (-) into
underscores (_). This casues problems in netifd which expected
"network_device" causing boards which depend on assigning MACs in
board.json via uci-defaults.sh (or jshn in general) to fail.

This commit addresses the issue by using network_device in
uci-defaults.sh.

The bug was uncovered in the forums here:
https://forum.openwrt.org/t/support-for-rtl838x-based-managed-switches/57875/2596

This was exposed by commit 4ebba8a05d09 ("realtek: add support for HPE
1920-8g-poe+") where the board_config_load call from 03_gpio introduced
the key normalization by jshn.

Fixes: 9290539ca9c7 ("base-files: allow setting device and bridge macs")
Tested-by: Stijn Segers <[email protected]>
Signed-off-by: Michael 'ASAP' Weinrich <[email protected]>
[ improve commit title, description and fix wrong Tested-by tag ]
Signed-off-by: Christian Marangi <[email protected]>
Michael 'ASAP' Weinrich 2 年之前
父節點
當前提交
12bc79d6d5
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      package/base-files/files/lib/functions/uci-defaults.sh

+ 1 - 1
package/base-files/files/lib/functions/uci-defaults.sh

@@ -107,7 +107,7 @@ ucidef_set_bridge_mac() {
 }
 
 ucidef_set_network_device_mac() {
-	json_select_object "network-device"
+	json_select_object "network_device"
 	json_select_object "${1}"
 	json_add_string macaddr "${2}"
 	json_select ..