From f985bd3e1497efb62c2455b260220503c2dc0470 Mon Sep 17 00:00:00 2001 From: nbd Date: Thu, 24 Mar 2011 13:39:11 +0000 Subject: [PATCH] mac80211: fix dropping multicast proberequest frames for ad-hoc (backport of r26284) git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@26285 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- ...-mac80211_fix_ibss_probereq_handling.patch | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 package/mac80211/patches/582-mac80211_fix_ibss_probereq_handling.patch diff --git a/package/mac80211/patches/582-mac80211_fix_ibss_probereq_handling.patch b/package/mac80211/patches/582-mac80211_fix_ibss_probereq_handling.patch new file mode 100644 index 000000000..150713322 --- /dev/null +++ b/package/mac80211/patches/582-mac80211_fix_ibss_probereq_handling.patch @@ -0,0 +1,19 @@ +--- a/net/mac80211/ibss.c ++++ b/net/mac80211/ibss.c +@@ -661,7 +661,6 @@ static void ieee80211_sta_find_ibss(stru + static void ieee80211_rx_mgmt_probe_req(struct ieee80211_sub_if_data *sdata, + struct sk_buff *req) + { +- struct ieee80211_rx_status *rx_status = IEEE80211_SKB_RXCB(req); + struct ieee80211_mgmt *mgmt = (void *)req->data; + struct ieee80211_if_ibss *ifibss = &sdata->u.ibss; + struct ieee80211_local *local = sdata->local; +@@ -685,7 +684,7 @@ static void ieee80211_rx_mgmt_probe_req( + mgmt->bssid, tx_last_beacon); + #endif /* CONFIG_MAC80211_IBSS_DEBUG */ + +- if (!tx_last_beacon && !(rx_status->rx_flags & IEEE80211_RX_RA_MATCH)) ++ if (!tx_last_beacon && is_multicast_ether_addr(mgmt->da)) + return; + + if (memcmp(mgmt->bssid, ifibss->bssid, ETH_ALEN) != 0 && -- 2.35.1