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

Required sequence to set wireless parameters?



This may be of interest to Glenn Saberton and others intending to improve
wireless support in D-I. The message was taken from a discussion on the
Linux Kernel Mailing List [1].

AFAIK netcfg currently violates this apparently recommended order which 
could go far to explain the problems we've seen.

Cheers,
FJP

[1] http://lkml.org/lkml/2009/3/19/154

----------  Forwarded Message  ----------
Subject: Re: Required sequence to set wireless parameters? (was: 
2.6.29-rc8: Reported regressions from 2.6.28)
Date: Thursday 19 March 2009
From: "John W. Linville" <email@somewhere.xxx>
To: Frans Pop <email@somewhere.xxx>

On Thu, Mar 19, 2009 at 04:02:56PM +0100, Frans Pop wrote:
> John W. Linville wrote:
> > On Thu, Mar 19, 2009 at 10:38:54AM +0100, Johannes Berg wrote:
> >> On Thu, 2009-03-19 at 12:49 +0800, Jeff Chua wrote:
> >> > # this needs patch to work ...
> >> > iwconfig wlan0 mode Managed
> >> > ifconfig wlan0 up
> >> > iwconfig wlan0 essid xxx
> >> > iwconfig wlan0 key restricted xxx
> >> > iwconfig wlan0 ap auto channel auto
> >> 
> >> If you swap the key and essid lines, it will probably always work.
> >> But I've yet to analyse your data to see why it doesn't in the other
> >> case. 
> > 
> > That is what I was going to suggest.  I go so far as to say that you
> > should set everything else before doing the "iwconfig wlan0 essid
> > xxx" bit.
> 
> Mostly just curious, but is that actually required by some wireless 
> standard? If not, is it really reasonable to ask userland to do things
> in that particular order?
> 
> Reason I ask is that for example when writing wireless support for e.g.
> a distro installation system, it seems most logical to *first* ask the
> user what network (ESSID) he wants to connect to. Next to check if we
> can connect to that network without additional authentication and only
> then, if needed, ask for keys etc.
> If it's not possible to set that info in that logical order that seems 
> rather restrictive to me and would probably mean that you'd have to
> reset AP, ESSID and possibly other settings before each incremental 
attempt.

You can ask the user for the data in whatever order you like, but
when you are done collecting it you should issue the "iwconfig wlan0
essid xxx" command (or execute the SIOCSIWESSID ioctl) last.  IMHO,
it is silly to even bother setting the SSID before you have set any
required key or (if you so choose) selecting an AP or channel.

This is a limitation of the wireless extensions API -- nothing in
the API really defines when an association should be triggered.
The mac80211 component uses the setting of the SSID as the trigger
for association.  AFAIK, this ordering should work with all other
drivers as well.

John
-------------------------------------------------------

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: