summaryrefslogtreecommitdiffstats
path: root/drivers/staging/brcm80211
diff options
context:
space:
mode:
authorArend van Spriel <arend@broadcom.com>2011-10-04 23:18:49 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-10-05 13:39:00 -0700
commit67064f27ab1b13152dc0d21423a14499fd5c34e2 (patch)
treed45802d8bc065e5e683f455a587b0f4e9a40a0d4 /drivers/staging/brcm80211
parent215f311b5b08a50765fc1a510e08a701498cd474 (diff)
downloadop-kernel-dev-67064f27ab1b13152dc0d21423a14499fd5c34e2.zip
op-kernel-dev-67064f27ab1b13152dc0d21423a14499fd5c34e2.tar.gz
staging: brcm80211: remove filtering of received frames
In the receive path of the brcmsmac driver probe request frames and frames with invalid mac address fields are dropped. This is only fine for STA mode. Anticipating coming AP and monitor mode functionality this is unwanted behavior. Reported-by: Johannes Berg <johannes@sipsolutions.net> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Roland Vossen <rvossen@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/brcm80211')
-rw-r--r--drivers/staging/brcm80211/brcmsmac/main.c23
1 files changed, 1 insertions, 22 deletions
diff --git a/drivers/staging/brcm80211/brcmsmac/main.c b/drivers/staging/brcm80211/brcmsmac/main.c
index efc6682..39b91d6 100644
--- a/drivers/staging/brcm80211/brcmsmac/main.c
+++ b/drivers/staging/brcm80211/brcmsmac/main.c
@@ -8238,29 +8238,8 @@ void brcms_c_recv(struct brcms_c_info *wlc, struct sk_buff *p)
if (len < D11_PHY_HDR_LEN + sizeof(h->frame_control))
goto toss;
+ /* not supporting A-MSDU */
is_amsdu = rxh->RxStatus2 & RXS_AMSDU_MASK;
-
- /* explicitly test bad src address to avoid sending bad deauth */
- if (!is_amsdu) {
- /* CTS and ACK CTL frames are w/o a2 */
-
- if (ieee80211_is_data(h->frame_control) ||
- ieee80211_is_mgmt(h->frame_control)) {
- if ((is_zero_ether_addr(h->addr2) ||
- is_multicast_ether_addr(h->addr2))) {
- wiphy_err(wlc->wiphy, "wl%d: %s: dropping a "
- "frame with invalid src mac address,"
- " a2: %pM\n",
- wlc->pub->unit, __func__, h->addr2);
- goto toss;
- }
- }
- }
-
- /* due to sheer numbers, toss out probe reqs for now */
- if (ieee80211_is_probe_req(h->frame_control))
- goto toss;
-
if (is_amsdu)
goto toss;
OpenPOWER on IntegriCloud