The capablities info field in an association request contains an ESS bit
which is set if the sender is an access point (there are other cases but
they don't matter for us; see 802.11-2012 8.4.1.4 if you are interested).

This bit is set when OpenBSD clients send an association request to an AP.
This seems wrong. The ESS bit should be zero when sent by clients.

Noticed while looking over packet captures for an unrelated issue.

ok?

diff 4a0fa473f5ea308b63ffd39645f73b2195291973 /usr/src
blob - 7952471d5bb369c9bb844966425fffc892a71038
file + sys/net80211/ieee80211_output.c
--- sys/net80211/ieee80211_output.c
+++ sys/net80211/ieee80211_output.c
@@ -1384,7 +1384,7 @@ ieee80211_get_assoc_req(struct ieee80211com *ic, struc
                return NULL;
 
        frm = mtod(m, u_int8_t *);
-       capinfo = IEEE80211_CAPINFO_ESS;
+       capinfo = 0;
        if (ic->ic_flags & IEEE80211_F_WEPON)
                capinfo |= IEEE80211_CAPINFO_PRIVACY;
        if ((ic->ic_flags & IEEE80211_F_SHPREAMBLE) &&

Reply via email to