add migration code to automatically convert old to new switch config on first boot, this will be removed at some point in the future

SVN-Revision: 18432
This commit is contained in:
Jo-Philipp Wich 2009-11-15 23:19:39 +00:00
parent b01e1d4916
commit a4b1848387

View File

@ -4,7 +4,41 @@
START=05
start() {
[ -e /etc/config/network ] && exit 0
[ -e /etc/config/network ] && {
local batch
config_cb() {
case "$1" in
switch)
option_cb() {
case "$1" in
vlan[0-9]|vlan1[0-5])
local id="${1#vlan}"
append batch "delete network.eth0.${1}${N}"
append batch "set network.eth0_${n}=switch_vlan${N}"
append batch "set network.eth0_${n}.device=eth0${N}"
append batch "set network.eth0_${n}.vlan=${id}${N}"
append batch "set network.eth0_${n}.ports='${2}'${N}"
;;
esac
}
;;
switch_vlan)
option_cb() { :; }
batch=""
;;
esac
}
config_load network
[ -n "$batch" ] && {
logger -t netconfig "migrating switch config to new format ..."
echo "$batch${N}commit network" | uci batch
}
exit 0
}
mkdir -p /etc/config