[PATCH] mac80211: fix for incorrect sequence number on hostapd injected frames
From: Björn Smedman <hidden>
Date: 2009-10-24 18:55:06
Subsystem:
mac80211, the rest · Maintainers:
Johannes Berg, Linus Torvalds
From: Björn Smedman <hidden>
Date: 2009-10-24 18:55:06
Subsystem:
mac80211, the rest · Maintainers:
Johannes Berg, Linus Torvalds
When hostapd injects a frame, e.g. an authentication or association response, mac80211 looks for a suitable access point virtual interface to associate the frame with based on its source address. This makes it possible e.g. to correctly assign sequence numbers to the frames. A small typo in the ethernet address comparison statement caused a failure to find a suitable ap interface. Sequence numbers on such frames where therefore left unassigned causing some clients (especially windows-based 11b/g clients) to reject them and fail to authenticate or associate with the access point. This patch fixes the typo in the address comparison statement. Signed-off-by: Björn Smedman <redacted> ---
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index db4bda6..eaa4118 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c@@ -1445,7 +1445,7 @@ static void ieee80211_xmit(structieee80211_sub_if_data *sdata,
if (tmp_sdata->vif.type != NL80211_IFTYPE_AP)
continue;
if (compare_ether_addr(tmp_sdata->dev->dev_addr,
- hdr->addr2)) {
+ hdr->addr2) == 0) {
dev_hold(tmp_sdata->dev);
dev_put(sdata->dev);
sdata = tmp_sdata;