aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files
diff options
context:
space:
mode:
Diffstat (limited to 'package/base-files')
-rw-r--r--package/base-files/files/etc/uci-defaults/11_network-migrate-bridges23
1 files changed, 23 insertions, 0 deletions
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 0000000000..745648531f
--- /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
+
+exit 1