On Wed, Oct 14, 2009 at 04:28:15PM -0700, Johannes Berg wrote: > On Tue, 2009-10-13 at 20:50 -0400, Luis R. Rodriguez wrote: > > If you try to authenticate with an AP we will keep track of the > > AP's BSS and expect to eventually either give up on the AP or complete > > an association cycle with it. If an AP rejects our association though > > mac80211 currently insists on telling cfg80211 a BSS authenticated > > correctly, this is wrong as it leaves a bogus BSS lingering around. > > But if assoc fails, it _did_ authenticate correctly. Well sure, but why do we want to keep the authentication present if association failed? And as a matter of fact it lingers there forever. Is that desired behaviour? > > --- a/net/mac80211/mlme.c > > +++ b/net/mac80211/mlme.c > > @@ -1463,11 +1463,11 @@ ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata, > > if (status_code != WLAN_STATUS_SUCCESS) { > > printk(KERN_DEBUG "%s: AP denied association (code=%d)\n", > > sdata->dev->name, status_code); > > list_del(&wk->list); > > kfree(wk); > > - return RX_MGMT_CFG80211_ASSOC; > > + return RX_MGMT_CFG80211_DEAUTH; > > I'm sure this is correct. Maybe cfg80211 doesn't react properly to > getting an assoc frame with non-zero status? I see, will have to take a look when I get a chance then, not now though. Luis -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html