2007-08-07 21:06:05

by John W. Linville

[permalink] [raw]
Subject: [PATCH] mac80211: probe for hidden SSIDs in pre-auth scan

From: John W. Linville <[email protected]>

Probe for hidden SSIDs if initiating pre-authentication scan and SSID
is set for STA interface.

Signed-off-by: John W. Linville <[email protected]>
---
The ternary conditionals are a bit ugly. I guess I could recode it
with temp vars initialized before calling ieee80211_sta_start_scan.

Any other complaints?

net/mac80211/ieee80211_sta.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c
index 007dd08..9f467cc 100644
--- a/net/mac80211/ieee80211_sta.c
+++ b/net/mac80211/ieee80211_sta.c
@@ -3217,7 +3217,10 @@ static int ieee80211_sta_config_auth(struct net_device *dev,
return 0;
} else {
if (ifsta->state != IEEE80211_AUTHENTICATE) {
- ieee80211_sta_start_scan(dev, NULL, 0);
+ ieee80211_sta_start_scan(dev, ifsta->auto_ssid_sel ?
+ NULL : ifsta->ssid,
+ ifsta->auto_ssid_sel ?
+ 0 : ifsta->ssid_len);
ifsta->state = IEEE80211_AUTHENTICATE;
set_bit(IEEE80211_STA_REQ_AUTH, &ifsta->request);
} else
--
John W. Linville
[email protected]


2007-08-08 07:58:00

by Michael Wu

[permalink] [raw]
Subject: Re: [PATCH] mac80211: probe for hidden SSIDs in pre-auth scan

On Tuesday 07 August 2007 13:33, John W. Linville wrote:
> The ternary conditionals are a bit ugly. I guess I could recode it
> with temp vars initialized before calling ieee80211_sta_start_scan.
>
Something more like:

if (ifsta->auto_ssid_sel && ifsta->ssid_len)
ieee80211_sta_start_scan(dev, NULL, 0);
else
ieee80211_sta_start_scan(dev, ifsta->ssid, ifsta->ssid_len);

would be better.

-Michael Wu


Attachments:
(No filename) (407.00 B)
(No filename) (189.00 B)
Download all attachments

2007-08-08 09:32:22

by Johannes Berg

[permalink] [raw]
Subject: Re: [PATCH] mac80211: probe for hidden SSIDs in pre-auth scan

On Wed, 2007-08-08 at 00:56 -0700, Michael Wu wrote:
> On Tuesday 07 August 2007 13:33, John W. Linville wrote:
> > The ternary conditionals are a bit ugly. I guess I could recode it
> > with temp vars initialized before calling ieee80211_sta_start_scan.
> >
> Something more like:
>
> if (ifsta->auto_ssid_sel && ifsta->ssid_len)
> ieee80211_sta_start_scan(dev, NULL, 0);
> else
> ieee80211_sta_start_scan(dev, ifsta->ssid, ifsta->ssid_len);

Except you got the condition inverted.

johannes


Attachments:
signature.asc (190.00 B)
This is a digitally signed message part

2007-08-08 09:39:21

by Johannes Berg

[permalink] [raw]
Subject: Re: [PATCH] mac80211: probe for hidden SSIDs in pre-auth scan

On Wed, 2007-08-08 at 11:34 +0200, Johannes Berg wrote:
> On Wed, 2007-08-08 at 00:56 -0700, Michael Wu wrote:
> > On Tuesday 07 August 2007 13:33, John W. Linville wrote:
> > > The ternary conditionals are a bit ugly. I guess I could recode it
> > > with temp vars initialized before calling ieee80211_sta_start_scan.
> > >
> > Something more like:
> >
> > if (ifsta->auto_ssid_sel && ifsta->ssid_len)
> > ieee80211_sta_start_scan(dev, NULL, 0);
> > else
> > ieee80211_sta_start_scan(dev, ifsta->ssid, ifsta->ssid_len);
>
> Except you got the condition inverted.

Well, not fully inverted. Shouldn't it be

if (!ifsta->auto_ssid_sel && ifsta->ssid_len)
...(dev, ifsta->ssid, ifsta->ssid_len)
else
...(dev, NULL, 0)

On the other hand, calling with a "anything, 0" probably has the same
effect as calling with "NULL, 0" so the "ifsta->ssid_len" condition can
go away just as linville had it.

johannes


Attachments:
signature.asc (190.00 B)
This is a digitally signed message part

2007-08-09 04:18:22

by Michael Wu

[permalink] [raw]
Subject: Re: [PATCH] mac80211: probe for hidden SSIDs in pre-auth scan

On Wednesday 08 August 2007 02:41, Johannes Berg wrote:
> On the other hand, calling with a "anything, 0" probably has the same
> effect as calling with "NULL, 0" so the "ifsta->ssid_len" condition can
> go away just as linville had it.
>
Yep.

-Michael Wu


Attachments:
(No filename) (257.00 B)
(No filename) (189.00 B)
Download all attachments