OpenWrt – Rev 1

Subversion Repositories:
Rev:
#!/bin/sh
#
# Copyright (C) 2013 OpenWrt.org
#

SWITCH_NAME_CHANGED=

. /lib/functions.sh

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

        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
        }
}

board=$(board_name)

case "$board" in
airrouter|\
ap121|\
ap121-mini|\
ap96|\
dir-600-a1|\
dir-615-c1|\
dir-615-e1|\
dir-615-e4|\
dir-825-c1|\
ebr-2310-c1|\
ew-dorin|\
ew-dorin-router|\
ja76pf|\
rb-750|\
rb-751|\
tew-632brp|\
tew-712br|\
tl-mr3220|\
tl-mr3220-v2 |\
tl-mr3420|\
tl-wdr4300|\
tl-wr741nd|\
tl-wr741nd-v4|\
tl-wr841n-v7|\
tl-wr1041n-v2|\
whr-g301n|\
whr-hp-g300n|\
whr-hp-gn|\
wrt160nl|\
wzr-hp-ag300h|\
wzr-hp-g300nh2|\
wzr-hp-g450h|\
z1)
        migrate_switch_name "eth0" "switch0"
        ;;

el-m150|\
rb-450)
        migrate_switch_name "eth1" "switch0"
        ;;

db120|\
rb-2011il|\
rb-2011ils|\
rb-2011l|\
rb-2011uas-2hnd)
        migrate_switch_name "eth0" "switch0"
        migrate_switch_name "eth1" "switch1"
        ;;

dir-825-b1|\
nbg460n_550n_550nh|\
tew-673gru)
        migrate_switch_name "rtl8366s" "switch0"
        ;;

tl-wr1043nd)
        migrate_switch_name "rtl8366rb" "switch0"
        ;;

esac

exit 0