Subject: Re: Questions on association request and Madwifi
To: Dave Hudak <dhudak@terabeam.com>
From: David Young <dyoung@pobox.com>
List: tech-net
Date: 12/14/2004 20:31:20
On Tue, Dec 14, 2004 at 07:13:36PM -0500, Dave Hudak wrote:
> To the list,
> 
> We (Steve, Bora and me) found something interesting on netbsd with 
> madwifi...
> 
> Bora got packet traces of a NetBSD 2.0RC3 802.11b madwifi station
> associating with a NetBSD 2.0RC3 802.11g madwifi AP.  The station sends
> an association request to the AP containing extended (802.11g) rates.
> 
> Steve found in ieee80211_send_mgmt() (in ieee80211_output.c), in the 
> case where it
> is sending an association request, it calls ieee80211_add_rates to
> insert the rate information into the association request it is building
> up as:
>         ieee80211_add_rates(frm, &ni->ni_rates);
> where ni is passed in from ieee80211_newstate() (in ieee80211_proto.c),
> and ni was assigned with:
>         ni = ic->ic_bss;
> 
> HOWEVER, in the probe request case (in ieee80211_send_mgmt() in
> ieee80211_output.c), ieee80211_add_rates() was called as:
>         ieee80211_add_rates(frm, &ic->ic_sup_rates[mode]);
> 
> In this case, it's not using the bss info, but the supported rates for
> the current mode (11a/b/g).  Now, I don't know if there is a good reason
> for it to be calling the add_rates function in this different way for
> association requests than it does for probe requests, but if this seems
> to be a problem.  We changed the add_rates call in the association
> request generation to use ic->ic_sup_rates.  Afterwords, the madwifi
> station sends the appropriate association request.
> 
> Has anyone seen anything like this before?  It looks like a bug to us.

Saying that back to you: the station sends its Association Request
containing the rateset in the AP's Beacon or Probe Response, which is
wrong; it sends the Probe Request containing its supported rates, which
is correct.

Sounds like a bug to me, too.

Dave

-- 
David Young             OJC Technologies
dyoung@ojctech.com      Urbana, IL * (217) 278-3933