diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2013-02-11 21:41:16 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2013-02-11 21:41:16 +0000 |
commit | 1f9ede9cfcd72ff87d4a60de5dac71eb80407385 (patch) | |
tree | d81a65c7f14186f79aa784eb3f3a8bbe632acdd1 /target/linux | |
parent | 0564b6beef56faf3ff822f797f35b8f075c7b1c0 (diff) | |
download | master-31e0f0ae-1f9ede9cfcd72ff87d4a60de5dac71eb80407385.tar.gz master-31e0f0ae-1f9ede9cfcd72ff87d4a60de5dac71eb80407385.tar.bz2 master-31e0f0ae-1f9ede9cfcd72ff87d4a60de5dac71eb80407385.zip |
ar71xx: add script for automatic switch name migration
Thanks to Jonas Gorski for the help.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 35567
Diffstat (limited to 'target/linux')
-rwxr-xr-x | target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration b/target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration new file mode 100755 index 0000000000..718a924f19 --- /dev/null +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration @@ -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 |