On 18.05.2021 23:41, Rafał Miłecki wrote:
From: Rafał Miłecki <ra...@milecki.pl>
Old "interface" sections for bridges were mixing layer 2 and layer 3.
That syntax got deprecated and UCI section "device" is used for bridge
configuration now.
Backward compatibility may be dropped from netifd soon now so migrate
old configs using uci-defaults script.
Signed-off-by: Rafał Miłecki <ra...@milecki.pl>
---
That "soon" is relative, I'm not planning to push this patch yet. We may
give updated /etc/config/network few months to receive proper testing.
I decided to push this PATCH after giving people 3 years to update their
configs manually.
---
.../uci-defaults/11_network-migrate-bridges | 24 +++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git
a/package/base-files/files/etc/uci-defaults/11_network-migrate-bridges
b/package/base-files/files/etc/uci-defaults/11_network-migrate-bridges
index 745648531f..7188c06ce3 100644
--- a/package/base-files/files/etc/uci-defaults/11_network-migrate-bridges
+++ b/package/base-files/files/etc/uci-defaults/11_network-migrate-bridges
@@ -17,7 +17,31 @@ migrate_ports() {
uci delete network.$config.ifname
}
+migrate_bridge() {
+ local config="$1"
+ local type ifname
+
+ config_get type "$config" type
+ [ "$type" != "bridge" ] && return
+
+ config_get ifname "$config" ifname
+
+ uci -q batch <<-EOF
+ add network device
+ set network.@device[-1].name='br-$config'
+ set network.@device[-1].type='bridge'
+ EOF
+ for port in $ifname; do uci add_list network.@device[-1].ports="$port";
done
+
+ uci -q batch <<-EOF
+ delete network.$config.type
+ set network.$config.ifname='br-$config'
+ EOF
+}
+
config_load network
config_foreach migrate_ports device
+config_foreach migrate_bridge interface
+uci commit network
exit 1
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel