From 1b737f88dc1b05cf571e96d42f748aaff6df1eb5 Mon Sep 17 00:00:00 2001 From: Johannes Berg Date: Thu, 18 Apr 2013 23:42:19 +0200 Subject: mac80211: fix P2P-Device management frame RX There's an issue in receiving broadcast management frames on P2P Device virtual interfaces, such frames have the RX flag IEEE80211_RX_RA_MATCH cleared and are thus dropped in ieee80211_rx_h_mgmt_check(). They should be let through to make it to ieee80211_rx_h_userspace_mgmt() and then to userspace. Signed-off-by: Johannes Berg --- net/mac80211/rx.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'net/mac80211') diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 643fcf7c9dc..14b32a4cd7b 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -3043,7 +3043,8 @@ static int prepare_for_handlers(struct ieee80211_rx_data *rx, !ieee80211_is_probe_resp(hdr->frame_control) && !ieee80211_is_beacon(hdr->frame_control)) return 0; - if (!ether_addr_equal(sdata->vif.addr, hdr->addr1)) + if (!ether_addr_equal(sdata->vif.addr, hdr->addr1) && + !multicast) status->rx_flags &= ~IEEE80211_RX_RA_MATCH; break; default: -- cgit v1.2.3