revert to using *_ifnames internally, too many problems with firewall, ppp, etc. otherwise
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4653 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
1a2a3a71d9
commit
579883fabc
|
@ -9,7 +9,10 @@ addif() {
|
||||||
# find all vlan configurations for this interface and set them up as well
|
# find all vlan configurations for this interface and set them up as well
|
||||||
for ifc in $interfaces; do
|
for ifc in $interfaces; do
|
||||||
config_get iftype "$ifc" type
|
config_get iftype "$ifc" type
|
||||||
config_get ifs "$ifc" ifname
|
case "$iftype" in
|
||||||
|
bridge) config_get ifs "$ifc" ifnames;;
|
||||||
|
*) config_get ifs "$ifc" ifname;;
|
||||||
|
esac
|
||||||
for dev in $ifs; do
|
for dev in $ifs; do
|
||||||
[ "${dev%%\.*}" = "$INTERFACE" -a "$dev" != "$INTERFACE" ] && {
|
[ "${dev%%\.*}" = "$INTERFACE" -a "$dev" != "$INTERFACE" ] && {
|
||||||
add_vlan "$dev"
|
add_vlan "$dev"
|
||||||
|
|
|
@ -21,7 +21,7 @@ find_config() {
|
||||||
}
|
}
|
||||||
|
|
||||||
scan_interfaces() {
|
scan_interfaces() {
|
||||||
local mode iftype iface
|
local mode iftype iface ifname device
|
||||||
interfaces=
|
interfaces=
|
||||||
config_cb() {
|
config_cb() {
|
||||||
config_get iftype "$CONFIG_SECTION" TYPE
|
config_get iftype "$CONFIG_SECTION" TYPE
|
||||||
|
@ -29,10 +29,15 @@ scan_interfaces() {
|
||||||
interface)
|
interface)
|
||||||
config_get proto "$CONFIG_SECTION" proto
|
config_get proto "$CONFIG_SECTION" proto
|
||||||
append interfaces "$CONFIG_SECTION"
|
append interfaces "$CONFIG_SECTION"
|
||||||
( type "scan_$proto" ) >/dev/null 2>/dev/null && eval "scan_$proto '$CONFIG_SECTION'"
|
config_get iftype "$CONFIG_SECTION" iftype
|
||||||
|
case "$iftype" in
|
||||||
|
bridge)
|
||||||
config_get ifname "$CONFIG_SECTION" ifname
|
config_get ifname "$CONFIG_SECTION" ifname
|
||||||
config_get device "$CONFIG_SECTION" device
|
config_set "$CONFIG_SECTION" ifnames "$ifname"
|
||||||
config_set "$CONFIG_SECTION" device "${device:-$ifname}"
|
config_set "$CONFIG_SECTION" ifname br-"$CONFIG_SECTION"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
( type "scan_$proto" ) >/dev/null 2>/dev/null && eval "scan_$proto '$CONFIG_SECTION'"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,10 @@
|
||||||
. /sbin/ifdown "$@"
|
. /sbin/ifdown "$@"
|
||||||
|
|
||||||
config_get iftype "$1" type
|
config_get iftype "$1" type
|
||||||
config_get ifname "$1" ifname
|
case "$iftype" in
|
||||||
|
bridge) config_get ifname "$1" ifnames;;
|
||||||
|
*) config_get ifname "$1" ifname;;
|
||||||
|
esac
|
||||||
|
|
||||||
for dev in $ifname; do
|
for dev in $ifname; do
|
||||||
setup_interface "$dev" "$1"
|
setup_interface "$dev" "$1"
|
||||||
|
|
Loading…
Reference in New Issue