* [PATCH] ath9k: Fix FIF_PROMISC_IN_BSS processing in station mode
@ 2009-03-10 8:55 Jouni Malinen
0 siblings, 0 replies; only message in thread
From: Jouni Malinen @ 2009-03-10 8:55 UTC (permalink / raw)
To: John W. Linville; +Cc: linux-wireless
We must not disable ACK sending in this case since it would break
normal station operations. In addition, clarify the comment about AP
mode to make more sense.
Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
---
drivers/net/wireless/ath9k/recv.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
--- wireless-testing.orig/drivers/net/wireless/ath9k/recv.c 2009-03-10 10:49:36.000000000 +0200
+++ wireless-testing/drivers/net/wireless/ath9k/recv.c 2009-03-10 10:52:19.000000000 +0200
@@ -385,14 +385,15 @@ u32 ath_calcrxfilter(struct ath_softc *s
if (sc->sc_ah->opmode != NL80211_IFTYPE_STATION)
rfilt |= ATH9K_RX_FILTER_PROBEREQ;
- /* Can't set HOSTAP into promiscous mode */
+ /*
+ * Set promiscuous mode when FIF_PROMISC_IN_BSS is enabled for station
+ * mode interface or when in monitor mode. AP mode does not need this
+ * since it receives all in-BSS frames anyway.
+ */
if (((sc->sc_ah->opmode != NL80211_IFTYPE_AP) &&
(sc->rx.rxfilter & FIF_PROMISC_IN_BSS)) ||
- (sc->sc_ah->opmode == NL80211_IFTYPE_MONITOR)) {
+ (sc->sc_ah->opmode == NL80211_IFTYPE_MONITOR))
rfilt |= ATH9K_RX_FILTER_PROM;
- /* ??? To prevent from sending ACK */
- rfilt &= ~ATH9K_RX_FILTER_UCAST;
- }
if (sc->rx.rxfilter & FIF_CONTROL)
rfilt |= ATH9K_RX_FILTER_CONTROL;
--
Jouni Malinen PGP id EFC895FA
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-03-10 8:55 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-10 8:55 [PATCH] ath9k: Fix FIF_PROMISC_IN_BSS processing in station mode Jouni Malinen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).