wpa_supplicant does not work properly with some USB adapters on WinXP

Jouni Malinen jkmaline at cc.hut.fi
Sat Aug 26 21:31:17 EDT 2006


On Tue, Aug 22, 2006 at 07:38:20PM -0700, Jouni Malinen wrote:
> On Tue, Aug 22, 2006 at 05:55:40PM +0300, Adrian Nistor wrote:
> > 2. Register for async events on MSNdis_StatusMediaConnect,
> > MSNdis_StatusMediaDisconnect, ... WITHOUT using a filter. The event will be
> > filtered later when it is received.
> 
> I think this needs to be done at least for adapter arrival/removal, but
> I would prefer to use proper filter for other events.

Well, not anymore.. ;-) It was easier to just drop the WMI filtering for
these and do filtering in ndis_events.c to allow the filter string to
change.

> > 3. When the event is received, look for the Win32_PnPEntity with the Name
> > equal to the InstanceName of the event, get its PNPDeviceId, get the
> > Win32_NetworkAdapter which has this PNPDeviceId. Compare the Index attribute
> > of the found Win32_NetworkAdapter with the index obtained in step 1. If they
> > match, the event is for the right adapter, otherwise drop it.
> > This works because the Index of an adapter is assigned to it when its driver
> > is first installed on the system and it never changes, even if the device is
> > unplugged/plugged or disabled/enabled.
> 
> I would like to move this to happen at startup and whenever a new
> adapter is added and not when a new media connect/disconnect is
> received.

I added this to the development branch. Win32_PnPEntity::Name is now
used as the string to match with InstanceName in received events. The
local copy of Win32_PnPEntity::Name is updated whenever a new adapter is
added (e.g., when re-plugging a USB adapter). Could you please test
whether the today's snapshot (or anything newer from devel branch) works
for you?

-- 
Jouni Malinen                                            PGP id EFC895FA



More information about the HostAP mailing list