projects
/
openwrt-10.03
/
.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
broadcom-wl: set vlan_mode for every enabled interface
[openwrt-10.03/.git]
/
package
/
broadcom-wl
/
files
/
lib
/
wifi
/
broadcom.sh
diff --git
a/package/broadcom-wl/files/lib/wifi/broadcom.sh
b/package/broadcom-wl/files/lib/wifi/broadcom.sh
index 33a3ebb8fa9547922c6fb8510d49ce8eaac812bf..435c440e2e02bca0b3f2a1046ab91df0eaf8709c 100644
(file)
--- a/
package/broadcom-wl/files/lib/wifi/broadcom.sh
+++ b/
package/broadcom-wl/files/lib/wifi/broadcom.sh
@@
-1,3
+1,15
@@
+bridge_interface() {
+ (
+ . /etc/functions.sh
+ include network
+ scan_interfaces
+ cfg="$(find_config "$1")"
+ [ -z "$cfg" ] && return 0
+ config_get iftype "$cfg" type
+ [ "$iftype" = bridge ] && config_get "$iftype" bridge
+ )
+}
+
scan_broadcom() {
local device="$1"
scan_broadcom() {
local device="$1"
@@
-69,6
+81,7
@@
setup_broadcom() {
_c=0
nas="$(which nas)"
nas_cmd=
_c=0
nas="$(which nas)"
nas_cmd=
+ if_up=
for vif in ${adhoc_if:-$sta_if $ap_if}; do
append vif_pre_up "vif $_c" "$N"
append vif_post_up "vif $_c" "$N"
for vif in ${adhoc_if:-$sta_if $ap_if}; do
append vif_pre_up "vif $_c" "$N"
append vif_post_up "vif $_c" "$N"
@@
-120,21
+133,23
@@
setup_broadcom() {
append vif_post_up "eap_restrict $eap_r" "$N"
config_get ssid "$vif" ssid
append vif_post_up "eap_restrict $eap_r" "$N"
config_get ssid "$vif" ssid
+ append vif_post_up "vlan_mode 0"
append vif_post_up "ssid $ssid" "$N"
append vif_post_up "enabled 1" "$N"
append vif_post_up "ssid $ssid" "$N"
append vif_post_up "enabled 1" "$N"
+ config_get ifname "$vif" ifname
+ append if_up "ifconfig $ifname up" ";$N"
[ -z "$nasopts" ] || {
[ -z "$nasopts" ] || {
- config_get ifname "$vif" ifname
- config_get bridge "$vif" bridge # XXX: integrate with /etc/config/network later
+ bridge="$(bridge_interface "$ifname")"
eval "${vif}_ssid=\"\$ssid\""
mode="-A"
[ "$vif" = "$sta_if" ] && mode="-S"
eval "${vif}_ssid=\"\$ssid\""
mode="-A"
[ "$vif" = "$sta_if" ] && mode="-S"
- [ -z "$nas" ] || nas_cmd="${nas_cmd:+$nas_cmd$N}$nas -P /var/run/nas.$ifname.pid -H 34954
-i $ifname${bridge:+ -l $bridge}
$mode -m $auth -w $crypto -s \"\$${vif}_ssid\" -g 3600 $nasopts &"
+ [ -z "$nas" ] || nas_cmd="${nas_cmd:+$nas_cmd$N}$nas -P /var/run/nas.$ifname.pid -H 34954
${bridge:+ -l $bridge} -i $ifname
$mode -m $auth -w $crypto -s \"\$${vif}_ssid\" -g 3600 $nasopts &"
}
_c=$(($_c + 1))
done
killall -KILL nas >&- 2>&-
}
_c=$(($_c + 1))
done
killall -KILL nas >&- 2>&-
-
cat
<<EOF
+
wlc stdin
<<EOF
$ifdown
mssid $mssid
$ifdown
mssid $mssid
@@
-156,6
+171,7
@@
up
$vif_post_up
EOF
eval "$nas_cmd"
$vif_post_up
EOF
eval "$nas_cmd"
+ eval "$if_up"
}
}