Search Linux Wireless

Re: [PATCH] mac80211: free ifsta->extra_ie in ieee80211_stop

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2007-11-20 at 14:37 +0100, Johannes Berg wrote:
> On Tue, 2007-11-20 at 14:55 +0800, Zhu Yi wrote:
> > I'm not sure if this is best choice, someone might have better
> > solutions. But this patch fixed the connection problem when switching
> > from a WPA enabled AP (using wpa_supplicant) to an open AP (using
> > iwconfig). The root cause is when we connect to a WPA enabled AP,
> > wpa_supplicant sets the ifsta->extra_ie thru SIOCSIWGENIE. But if we
> > stop wpa_supplicant and connect to an open AP with iwconfig, there is
> > no way to clear the extra_ie so that mac80211 keeps connecting with that.
> 
> Fun.
> 
> > Someone could argue wpa_supplicant should clear the extra_ie during
> > its shutdown. But mac80211 should also handle the unexpected shutdown
> > case (ie. killall -9 wpa_supplicant).
> 
> Yes. But if you do that, the interface won't be down either. Maybe this
> should also be done when removing keys?

That seems better to me; although couldn't it also be cleared when
setting static WEP keys?  Dynamic WEP shouldn't care about the IE bits
either, so any time a WEP key is set and you're _not_ doing WPA the IE
could get cleared.

Though on the other hand, the interface isn't going to work much longer
after wpa_supplicant goes away anyway, depending on how long the
group/multicast rekey interval is.

Dan


-
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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux