ar71xx: add script for automatic switch name migration

Thanks to Jonas Gorski for the help.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35567 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Gabor Juhos 2013-02-11 21:41:16 +00:00
parent 0918304925
commit 00a47a6c78
1 changed files with 106 additions and 0 deletions

View File

@ -0,0 +1,106 @@
#!/bin/sh
#
# Copyright (C) 2013 OpenWrt.org
#
SWITCH_NAME_CHANGED=
do_change_switch_name() {
local config="$1"
local option=$2
local oldname=$3
local newname=$4
local val
config_get val "$config" $option
[ "$val" != "$oldname" ] && return 0
uci_set network "$config" $option $newname
SWITCH_NAME_CHANGED=1
return 0
}
migrate_switch_name() {
local oldname=$1
local newname=$2
. /lib/functions.sh
config_load network
logger -t migrate-switchX "Updating switch names in network configuration"
config_foreach do_change_switch_name switch name $oldname $newname
config_foreach do_change_switch_name switch_vlan device $oldname $newname
[ "$SWITCH_NAME_CHANGED" == "1" ] && {
logger -t migrate-switchX "Switch names updated, saving network configuration"
uci commit network
}
}
. /lib/ar71xx.sh
board=$(ar71xx_board_name)
case "$board" in
dir-825-c1|\
wzr-hp-g300nh2|\
pb92|\
ap113|\
tl-wdr4300|\
tl-wr1041n-v2|\
wrt160nl|\
ap121|\
ap121-mini|\
ap96|\
airrouter|\
dir-600-a1|\
dir-615-c1|\
dir-615-e4|\
ja76pf|\
rb-750|\
rb-751|\
tew-632brp|\
tew-712br|\
tl-mr3220|\
tl-mr3220-v2 |\
tl-mr3420|\
tl-wr741nd|\
tl-wr741nd-v4|\
tl-wr841n-v7|\
whr-g301n|\
whr-hp-g300n|\
whr-hp-gn|\
wzr-hp-ag300h|\
wzr-hp-g450h|\
ew-dorin|\
ew-dorin-router)
migrate_switch_name "eth0" "switch0"
;;
rb-450)
migrate_switch_name "eth1" "switch0"
;;
db120 |\
rb-2011l | \
rb-2011uas-2hnd)
migrate_switch_name "eth0" "switch0"
migrate_switch_name "eth1" "switch1"
;;
dir-825-b1|\
tew-673gru|\
nbg460n_550n_550nh)
migrate_switch_name "rtl8366s" "switch0"
;;
tl-wr1043nd)
migrate_switch_name "rtl8366rb" "switch0"
;;
esac
exit 0