X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/ba2d06509078a9dbbc09a08e181239f47ed679fe..aea7a72fb9fe9c86010022366fba33c66a06514a:/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 abfbfb978..f52e9b0d7 100644 --- a/package/broadcom-wl/files/lib/wifi/broadcom.sh +++ b/package/broadcom-wl/files/lib/wifi/broadcom.sh @@ -71,6 +71,7 @@ scan_broadcom() { } disable_broadcom() { + set_wifi_down "$1" wlc down ( include /lib/network @@ -96,6 +97,8 @@ enable_broadcom() { config_get slottime "$device" slottime config_get rxant "$device" rxant config_get txant "$device" txant + config_get macfilter "$device" macfilter + config_get maclist "$device" maclist local vif_pre_up vif_post_up vif_do_up _c=0 @@ -111,6 +114,18 @@ enable_broadcom() { } || { slottime="${slottime:--1}" } + + case "$macfilter" in + allow|2) + macfilter=2; + ;; + deny|1) + macfilter=1; + ;; + disable|none|0) + macfilter=0; + ;; + esac for vif in $vifs; do config_get mode "$vif" mode @@ -197,6 +212,7 @@ enable_broadcom() { [ -z "$net_cfg" ] || { bridge="$(bridge_interface "$net_cfg")" append if_up "start_net '$ifname' '$net_cfg'" ";$N" + append if_up "set_wifi_up '$vif' '$ifname'" ";$N" } [ -z "$nasopts" ] || { eval "${vif}_ssid=\"\$ssid\"" @@ -230,9 +246,10 @@ rxant ${rxant:-3} txant ${txant:-3} radio ${radio:-1} -macfilter 0 -maclist none -wds ${wds:-none} +macfilter ${macfilter:-0} +maclist ${maclist:-none} +wds none +${wds:+wds $wds} ${channel:+channel $channel} country ${country:-IL0} maxassoc ${maxassoc:-128}