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 new file mode 100644 index 00000000000..ad13d1a3535 --- /dev/null +++ b/package/base-files/files/etc/uci-defaults/11_network-migrate-bridges @@ -0,0 +1,23 @@ +. /lib/functions.sh + +migrate_ports() { + local config="$1" + local type ports ifname + + config_get type "$config" type + [ "$type" != "bridge" ] && return + + config_get ports "$config" ports + [ -n "$ports" ] && return + + config_get ifname "$config" ifname + [ -z "$ifname" ] && return + + for port in $ifname; do + uci add_list network.$config.ports="$port" + done + uci delete network.$config.ifname +} + +config_load network +config_foreach migrate_ports device