2008-10-25 10:58:47

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: why differnet wlan drivers need different settings?

On Saturday, 25 of October 2008, Alexey Fisher wrote:
> May be this is the wrong plase to ask.

Yeah, better ask that on [email protected] (CCed).

> The question is: Why differnet wlan drivers use different settings to stay
> silent - powered on but not trying to associate to any accespoint?
> For example: ipw2200 - if wlan was connfigured like:
>
> iwconfig wlan1 essid "my-ap" chan 6 ap my:aps:mac ?key s:pass
>
> this will normaly connect to my secure ?AP. and if i set after this:
> ?
> iwconfig wlan1 essid off ap off
>
> it will connect to unsecure AP of my neighbour or of Dr.Evil :)
> to disable association on ipw2200 i need to set all this and plus "chan 0".
> With this cnowleg i want to set up iwl3945, and surprise it's not working.
> This driver do not accepted "chan 0" and instead of "essid off" it did
> "essid """
>
> Are there any unified way to keep adapter powered on but not trying to
> associate to some AP?
>


2008-10-25 20:45:37

by Oleksij Rempel

[permalink] [raw]
Subject: Re: why differnet wlan drivers need different settings?

On Saturday 25 October 2008 15:55:12 John W. Linville wrote:
> On Sat, Oct 25, 2008 at 01:03:34PM +0200, Rafael J. Wysocki wrote:
> > On Saturday, 25 of October 2008, Alexey Fisher wrote:
> > > May be this is the wrong plase to ask.
> >
> > Yeah, better ask that on [email protected] (CCed).
> >
> > > The question is: Why differnet wlan drivers use different settings to
> > > stay silent - powered on but not trying to associate to any accespoint?
> > > For example: ipw2200 - if wlan was connfigured like:
> > >
> > > iwconfig wlan1 essid "my-ap" chan 6 ap my:aps:mac ?key s:pass
> > >
> > > this will normaly connect to my secure ?AP. and if i set after this:
> > > ?
> > > iwconfig wlan1 essid off ap off
> > >
> > > it will connect to unsecure AP of my neighbour or of Dr.Evil :)
> > > to disable association on ipw2200 i need to set all this and plus "chan
> > > 0". With this cnowleg i want to set up iwl3945, and surprise it's not
> > > working. This driver do not accepted "chan 0" and instead of "essid
> > > off" it did "essid """
> > >
> > > Are there any unified way to keep adapter powered on but not trying to
> > > associate to some AP?
>
> That is from the bad-ole-days. I could be wrong, but AFAIK only the
> ipw2x00 drivers do that anyway. I recently merged a patch to change
> the default for that for ipw2200 into wireless-testing. We should
> probably have one for ipw2100 as well.
>
> Anyway, there are module options for those. Add "options ipw2200
> associate=0" to /etc/modprobe.conf.

I use associate=0 with smole workaround:

diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c
index dcce354..92583c6 100644
--- a/drivers/net/wireless/ipw2200.c
+++ b/drivers/net/wireless/ipw2200.c
@@ -7582,7 +7582,7 @@ static int ipw_associate(void *data)

if (!(priv->config & CFG_ASSOCIATE) &&
!(priv->config & (CFG_STATIC_ESSID |
- CFG_STATIC_CHANNEL | CFG_STATIC_BSSID))) {
+ CFG_STATIC_BSSID))) {
IPW_DEBUG_ASSOC("Not attempting association (associate=0)\n");
return 0;
}

becouse networkmanager do not set channel=0 to be compartibel with other
drivers.
Are there any better solution?

2008-10-27 16:18:42

by Dan Williams

[permalink] [raw]
Subject: Re: why differnet wlan drivers need different settings?

On Sat, 2008-10-25 at 22:45 +0200, Alexey Fisher wrote:
> On Saturday 25 October 2008 15:55:12 John W. Linville wrote:
> > On Sat, Oct 25, 2008 at 01:03:34PM +0200, Rafael J. Wysocki wrote:
> > > On Saturday, 25 of October 2008, Alexey Fisher wrote:
> > > > May be this is the wrong plase to ask.
> > >
> > > Yeah, better ask that on [email protected] (CCed).
> > >
> > > > The question is: Why differnet wlan drivers use different settings to
> > > > stay silent - powered on but not trying to associate to any accespoint?
> > > > For example: ipw2200 - if wlan was connfigured like:
> > > >
> > > > iwconfig wlan1 essid "my-ap" chan 6 ap my:aps:mac ?key s:pass
> > > >
> > > > this will normaly connect to my secure ?AP. and if i set after this:
> > > > ?
> > > > iwconfig wlan1 essid off ap off
> > > >
> > > > it will connect to unsecure AP of my neighbour or of Dr.Evil :)
> > > > to disable association on ipw2200 i need to set all this and plus "chan
> > > > 0". With this cnowleg i want to set up iwl3945, and surprise it's not
> > > > working. This driver do not accepted "chan 0" and instead of "essid
> > > > off" it did "essid """
> > > >
> > > > Are there any unified way to keep adapter powered on but not trying to
> > > > associate to some AP?
> >
> > That is from the bad-ole-days. I could be wrong, but AFAIK only the
> > ipw2x00 drivers do that anyway. I recently merged a patch to change
> > the default for that for ipw2200 into wireless-testing. We should
> > probably have one for ipw2100 as well.
> >
> > Anyway, there are module options for those. Add "options ipw2200
> > associate=0" to /etc/modprobe.conf.
>
> I use associate=0 with smole workaround:
>
> diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c
> index dcce354..92583c6 100644
> --- a/drivers/net/wireless/ipw2200.c
> +++ b/drivers/net/wireless/ipw2200.c
> @@ -7582,7 +7582,7 @@ static int ipw_associate(void *data)
>
> if (!(priv->config & CFG_ASSOCIATE) &&
> !(priv->config & (CFG_STATIC_ESSID |
> - CFG_STATIC_CHANNEL | CFG_STATIC_BSSID))) {
> + CFG_STATIC_BSSID))) {
> IPW_DEBUG_ASSOC("Not attempting association (associate=0)\n");
> return 0;
> }

Yeah, that's probably appropriate, otherwise just 'iwconfig eth1 channel
6' would trigger association to _something_, which is wrong. Changing
the channel should (and does) trigger reassociation, but only if there
is an SSID to associate with!

In plain english, this if statement should read:

"If associate=0, and no locked SSID or locked BSSID have been set, don't
associate"

> becouse networkmanager do not set channel=0 to be compartibel with other
> drivers.

wpa_supplicant sets (or doesn't set) the channel, not NM...

Care to submit a patch with the appropriate signed-off-by tag?

Thanks!
Dan



2008-10-25 13:56:03

by John W. Linville

[permalink] [raw]
Subject: Re: why differnet wlan drivers need different settings?

On Sat, Oct 25, 2008 at 01:03:34PM +0200, Rafael J. Wysocki wrote:
> On Saturday, 25 of October 2008, Alexey Fisher wrote:
> > May be this is the wrong plase to ask.
>
> Yeah, better ask that on [email protected] (CCed).
>
> > The question is: Why differnet wlan drivers use different settings to stay
> > silent - powered on but not trying to associate to any accespoint?
> > For example: ipw2200 - if wlan was connfigured like:
> >
> > iwconfig wlan1 essid "my-ap" chan 6 ap my:aps:mac ?key s:pass
> >
> > this will normaly connect to my secure ?AP. and if i set after this:
> > ?
> > iwconfig wlan1 essid off ap off
> >
> > it will connect to unsecure AP of my neighbour or of Dr.Evil :)
> > to disable association on ipw2200 i need to set all this and plus "chan 0".
> > With this cnowleg i want to set up iwl3945, and surprise it's not working.
> > This driver do not accepted "chan 0" and instead of "essid off" it did
> > "essid """
> >
> > Are there any unified way to keep adapter powered on but not trying to
> > associate to some AP?

That is from the bad-ole-days. I could be wrong, but AFAIK only the
ipw2x00 drivers do that anyway. I recently merged a patch to change
the default for that for ipw2200 into wireless-testing. We should
probably have one for ipw2100 as well.

Anyway, there are module options for those. Add "options ipw2200
associate=0" to /etc/modprobe.conf.

Hth!

John
--
John W. Linville Linux should be at the core
[email protected] of your literate lifestyle.

2008-11-03 22:28:10

by Oleksij Rempel

[permalink] [raw]
Subject: Re: why differnet wlan drivers need different settings?

Am Montag, den 03.11.2008, 16:25 -0500 schrieb Dan Williams:

> Ping; could you submit the patch with the proper signed-off-by
> statement?
>
> Thanks!
> Dan
Sorry didn't thought it was to me.
i did't had a time to find how to supply patch with git .. i think it
should be some thing with git-diff and git-formate-mail.. is it?
Can you please write how to do it correctly, i really do not haw time to
find it out now.

signed-off-by: Alexey Fisher

diff --git a/drivers/net/wireless/ipw2200.c
b/drivers/net/wireless/ipw2200.c
index dcce354..d26beed 100644
--- a/drivers/net/wireless/ipw2200.c
+++ b/drivers/net/wireless/ipw2200.c
@@ -7581,8 +7581,7 @@ static int ipw_associate(void *data)
}

if (!(priv->config & CFG_ASSOCIATE) &&
- !(priv->config & (CFG_STATIC_ESSID |
- CFG_STATIC_CHANNEL | CFG_STATIC_BSSID))) {
+ !(priv->config & (CFG_STATIC_ESSID | CFG_STATIC_BSSID))) {
IPW_DEBUG_ASSOC("Not attempting association (associate=0)\n");
return 0;
}




2008-11-03 21:27:26

by Dan Williams

[permalink] [raw]
Subject: Re: why differnet wlan drivers need different settings?

On Mon, 2008-10-27 at 12:13 -0400, Dan Williams wrote:
> On Sat, 2008-10-25 at 22:45 +0200, Alexey Fisher wrote:
> > On Saturday 25 October 2008 15:55:12 John W. Linville wrote:
> > > On Sat, Oct 25, 2008 at 01:03:34PM +0200, Rafael J. Wysocki wrote:
> > > > On Saturday, 25 of October 2008, Alexey Fisher wrote:
> > > > > May be this is the wrong plase to ask.
> > > >
> > > > Yeah, better ask that on [email protected] (CCed).
> > > >
> > > > > The question is: Why differnet wlan drivers use different settings to
> > > > > stay silent - powered on but not trying to associate to any accespoint?
> > > > > For example: ipw2200 - if wlan was connfigured like:
> > > > >
> > > > > iwconfig wlan1 essid "my-ap" chan 6 ap my:aps:mac ?key s:pass
> > > > >
> > > > > this will normaly connect to my secure ?AP. and if i set after this:
> > > > > ?
> > > > > iwconfig wlan1 essid off ap off
> > > > >
> > > > > it will connect to unsecure AP of my neighbour or of Dr.Evil :)
> > > > > to disable association on ipw2200 i need to set all this and plus "chan
> > > > > 0". With this cnowleg i want to set up iwl3945, and surprise it's not
> > > > > working. This driver do not accepted "chan 0" and instead of "essid
> > > > > off" it did "essid """
> > > > >
> > > > > Are there any unified way to keep adapter powered on but not trying to
> > > > > associate to some AP?
> > >
> > > That is from the bad-ole-days. I could be wrong, but AFAIK only the
> > > ipw2x00 drivers do that anyway. I recently merged a patch to change
> > > the default for that for ipw2200 into wireless-testing. We should
> > > probably have one for ipw2100 as well.
> > >
> > > Anyway, there are module options for those. Add "options ipw2200
> > > associate=0" to /etc/modprobe.conf.
> >
> > I use associate=0 with smole workaround:
> >
> > diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c
> > index dcce354..92583c6 100644
> > --- a/drivers/net/wireless/ipw2200.c
> > +++ b/drivers/net/wireless/ipw2200.c
> > @@ -7582,7 +7582,7 @@ static int ipw_associate(void *data)
> >
> > if (!(priv->config & CFG_ASSOCIATE) &&
> > !(priv->config & (CFG_STATIC_ESSID |
> > - CFG_STATIC_CHANNEL | CFG_STATIC_BSSID))) {
> > + CFG_STATIC_BSSID))) {
> > IPW_DEBUG_ASSOC("Not attempting association (associate=0)\n");
> > return 0;
> > }
>
> Yeah, that's probably appropriate, otherwise just 'iwconfig eth1 channel
> 6' would trigger association to _something_, which is wrong. Changing
> the channel should (and does) trigger reassociation, but only if there
> is an SSID to associate with!
>
> In plain english, this if statement should read:
>
> "If associate=0, and no locked SSID or locked BSSID have been set, don't
> associate"
>
> > becouse networkmanager do not set channel=0 to be compartibel with other
> > drivers.
>
> wpa_supplicant sets (or doesn't set) the channel, not NM...
>
> Care to submit a patch with the appropriate signed-off-by tag?

Ping; could you submit the patch with the proper signed-off-by
statement?

Thanks!
Dan