[patch] Unable to associate with already associated network on ipw3945 hardware
Dan Williams
dcbw
Tue Sep 4 05:10:03 PDT 2007
On Tue, 2007-09-04 at 12:29 +0200, Reinhard Tartler wrote:
> Hey there,
>
> This is a forward for a bug filed by Scott Robinson against the
> wpasupplicant package in ubuntu. You can see the bug report here:
>
> https://bugs.launchpad.net/ubuntu/+source/wpasupplicant/+bug/135442
>
> Text follows:
>
> > the ipw3945 driver does not send an association event in the case of a
> > requested association to the already associated AP.
> >
> > wpasupplicant expects this but won't request a disassociation due to
> > the bssid never being filled in its internal view of the wireless
> > interface.
> >
> > The attached patch can be placed in the debian/patches directory for
> > wpasupplicant and will fill in the data structures and request a
> > disassociation, thereby solving the problem.
I'd say, fix the driver. I had to fix this in libertas too, because
that's the correct place to do it.
If a userspace process calls SIOCSIWESSID or SIOCSIWAP, then the driver
is expected to return the association event no matter what, even if the
card is already associated to the AP.
Dan
> The patch is here:
>
> --- wpa_supplicant/wpa_supplicant.c.orig 2007-05-28 10:26:55.000000000 -0700
> +++ wpa_supplicant/wpa_supplicant.c 2007-08-24 19:08:22.000000000 -0700
> @@ -2107,6 +2107,11 @@
> wpa_printf(MSG_DEBUG, "RSN: flushing PMKID list in the driver");
> wpa_drv_flush_pmkid(wpa_s);
>
> + /* Disassociate the interface on startup, as WPAS has presumptions
> + * about the whole mess. */
> + wpa_supplicant_get_bssid(wpa_s, wpa_s->bssid);
> + wpa_supplicant_disassociate(wpa_s, WLAN_REASON_UNSPECIFIED);
> +
> wpa_s->prev_scan_ssid = BROADCAST_SSID_SCAN;
> wpa_supplicant_req_scan(wpa_s, interface_count, 100000);
> interface_count++;
>
>
> Jouni, can you please comment on this? Is this patch okay for your tree?
>
More information about the Hostap
mailing list