switch: eliminate the asterisk from the switch port configuration and set it automatically on the first vlan, this aligns the broadcom vlan config with the swconfig format

SVN-Revision: 19909
owl
Jo-Philipp Wich 2010-02-28 16:40:06 +00:00
parent a15d58f605
commit 96e4312e7e
2 changed files with 11 additions and 2 deletions

View File

@ -25,13 +25,21 @@ setup_switch_vlan() {
config_get vlan "$s" vlan
config_get ports "$s" ports
[ -n "$dev" ] && [ -n "$vlan" ] && {
[ -n "$dev" ] && [ -n "$vlan" ] && {
ports="${ports%\*}"
[ "$_vlan_pvid_set" = 1 ] || {
ports="$ports*"
_vlan_pvid_set=1
}
local proc="/proc/switch/$dev/vlan/$vlan/ports"
[ -f "$proc" ] && echo "$ports" > "$proc"
}
}
setup_switch() {
_vlan_pvid_set=0
config_load network
config_foreach setup_switch_hw switch
config_foreach setup_switch_vlan switch_vlan

View File

@ -14,11 +14,12 @@ start() {
case "$1" in
vlan[0-9]|vlan1[0-5])
local id="${1#vlan}"
local ports="${2%\*}"
append batch "delete network.eth0.${1}${N}"
append batch "set network.eth0_${id}=switch_vlan${N}"
append batch "set network.eth0_${id}.device=eth0${N}"
append batch "set network.eth0_${id}.vlan=${id}${N}"
append batch "set network.eth0_${id}.ports='${2}'${N}"
append batch "set network.eth0_${id}.ports='${ports}'${N}"
;;
esac
}