NDIS driver / changing RSN IEs

Jouni Malinen jkmaline
Sun Nov 20 12:08:58 PST 2005


On Mon, Nov 07, 2005 at 10:29:17PM -0500, Bryan Kadzban wrote:

> I added code to request OID_802_11_BSSID_LIST, then iterate through the
> results looking for a result that has a BSSID matching drv->bssid.  When
> I find the first one, I check its ->IELength and make sure that's bigger
> than the size of the NDIS_802_11_FIXED_IEs structure.  Then I set
> assoc_info.beacon_ies to ->IEs + sizeof(NDIS_802_11_FIXED_IEs), and I
> set assoc_info.beacon_ies_len to ->IELength - sizeof(that-structure).
> 
> Then I call wpa_supplicant_event(..., EVENT_ASSOCINFO, ...);.
> 
> This works fine -- the WMP54GS driver does update its BSSID list soon
> enough after an association that we've never gotten the old IEs.

Thanks! This sounds like a reasonable thing to do. I modified
driver_ndis.c to do this.

> One possible fix might be to find somewhere else in driver_ndis.c to set
> drv->radio_enabled, so that it gets set no matter what the ap_scan mode
> is.  I haven't tried this, but I'm guessing it'd work.

This is indeed the proper way to fix this. set_ssid() is now doing this
and this change seemed to fix the problem in ap_scan=2 mode.

-- 
Jouni Malinen                                            PGP id EFC895FA




More information about the Hostap mailing list