X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/d62e77d17efa6e3105f52411e13fdc3e3d8787a4..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 3a8bebd17..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,8 +246,8 @@ rxant ${rxant:-3} txant ${txant:-3} radio ${radio:-1} -macfilter 0 -maclist none +macfilter ${macfilter:-0} +maclist ${maclist:-none} wds none ${wds:+wds $wds} ${channel:+channel $channel}