2007-11-21 16:55:56

by John W. Linville

[permalink] [raw]
Subject: [PATCH] mac80211: remove "bcn_int" and "capab" scan results info

These bits were dead code before "mac80211: Remove local->scan_flags"
(commit 6681dd3fd0e4d36a4547415853e83411baa7b705) and probably should
have been removed as part of that commit.

Signed-off-by: John W. Linville <[email protected]>
---
net/mac80211/ieee80211_sta.c | 25 -------------------------
1 files changed, 0 insertions(+), 25 deletions(-)

diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c
index 2a321f0..936f1cd 100644
--- a/net/mac80211/ieee80211_sta.c
+++ b/net/mac80211/ieee80211_sta.c
@@ -3001,31 +3001,6 @@ ieee80211_sta_scan_result(struct net_device *dev,
}
}

- do {
- char *buf;
-
- buf = kmalloc(100, GFP_ATOMIC);
- if (!buf)
- break;
-
- memset(&iwe, 0, sizeof(iwe));
- iwe.cmd = IWEVCUSTOM;
- sprintf(buf, "bcn_int=%d", bss->beacon_int);
- iwe.u.data.length = strlen(buf);
- current_ev = iwe_stream_add_point(current_ev, end_buf, &iwe,
- buf);
-
- memset(&iwe, 0, sizeof(iwe));
- iwe.cmd = IWEVCUSTOM;
- sprintf(buf, "capab=0x%04x", bss->capability);
- iwe.u.data.length = strlen(buf);
- current_ev = iwe_stream_add_point(current_ev, end_buf, &iwe,
- buf);
-
- kfree(buf);
- break;
- } while (0);
-
return current_ev;
}

--
1.5.3.3



2007-11-23 12:16:18

by Johannes Berg

[permalink] [raw]
Subject: Re: [PATCH] mac80211: remove "bcn_int" and "capab" scan results info

> > If I understood correctly, the proposed change was removing 'capab'
> > information from scan results(?). If that is the case, that would break
> > wpa_supplicant network selection since there would be no information on
> > whether the network is using encryption or not (privacy flag) and
> > whether it is a BSS or an IBSS. Consequently, I obviously continue to
> > object this type of change as long as WE is used for getting scan
> > results.
>
> Well, wpa_supplicant currently works, right? And this code is never
> triggered before the change to remove scan_flags because scan_flags
> cannot be set. Hence, I don't see how wpa_supplicant can possibly need
> this information.

In fact, wpa_supplicant isn't even using the capab= information from the
possibly present custom structure in the scan result, it uses
SIOCGIWMODE to figure out whether it's a BSS or an IBSS, and probably
IWEVGENIE to figure out encryption.

The only thing it can possibly read from the custom scan result is
wpa_ie= and rsn_ie= which are IWEVGENIE and tsf= which we never pass.

Therefore, we should merge this patch.

johannes


2007-11-21 17:03:38

by Johannes Berg

[permalink] [raw]
Subject: Re: [PATCH] mac80211: remove "bcn_int" and "capab" scan results info


On Wed, 2007-11-21 at 11:55 -0500, John W. Linville wrote:
> These bits were dead code before "mac80211: Remove local->scan_flags"
> (commit 6681dd3fd0e4d36a4547415853e83411baa7b705) and probably should
> have been removed as part of that commit.

I'm all for it. But Jouni complained although this code couldn't be
triggered. I think Jouni's objections will be addressed with nl80211
work though, so maybe we can remove it for now anyway?

johannes

> diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c
> index 2a321f0..936f1cd 100644
> --- a/net/mac80211/ieee80211_sta.c
> +++ b/net/mac80211/ieee80211_sta.c
> @@ -3001,31 +3001,6 @@ ieee80211_sta_scan_result(struct net_device *dev,
> }
> }
>
> - do {
> - char *buf;
> -
> - buf = kmalloc(100, GFP_ATOMIC);
> - if (!buf)
> - break;
> -
> - memset(&iwe, 0, sizeof(iwe));
> - iwe.cmd = IWEVCUSTOM;
> - sprintf(buf, "bcn_int=%d", bss->beacon_int);
> - iwe.u.data.length = strlen(buf);
> - current_ev = iwe_stream_add_point(current_ev, end_buf, &iwe,
> - buf);
> -
> - memset(&iwe, 0, sizeof(iwe));
> - iwe.cmd = IWEVCUSTOM;
> - sprintf(buf, "capab=0x%04x", bss->capability);
> - iwe.u.data.length = strlen(buf);
> - current_ev = iwe_stream_add_point(current_ev, end_buf, &iwe,
> - buf);
> -
> - kfree(buf);
> - break;
> - } while (0);
> -
> return current_ev;
> }
>


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

2007-11-22 12:57:53

by Johannes Berg

[permalink] [raw]
Subject: Re: [PATCH] mac80211: remove "bcn_int" and "capab" scan results info


> If I understood correctly, the proposed change was removing 'capab'
> information from scan results(?). If that is the case, that would break
> wpa_supplicant network selection since there would be no information on
> whether the network is using encryption or not (privacy flag) and
> whether it is a BSS or an IBSS. Consequently, I obviously continue to
> object this type of change as long as WE is used for getting scan
> results.

Well, wpa_supplicant currently works, right? And this code is never
triggered before the change to remove scan_flags because scan_flags
cannot be set. Hence, I don't see how wpa_supplicant can possibly need
this information.

johannes


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

2007-11-22 04:32:14

by Jouni Malinen

[permalink] [raw]
Subject: Re: [PATCH] mac80211: remove "bcn_int" and "capab" scan results info

On Wed, Nov 21, 2007 at 06:01:15PM +0100, Johannes Berg wrote:
> On Wed, 2007-11-21 at 11:55 -0500, John W. Linville wrote:
> > These bits were dead code before "mac80211: Remove local->scan_flags"
> > (commit 6681dd3fd0e4d36a4547415853e83411baa7b705) and probably should
> > have been removed as part of that commit.
>
> I'm all for it. But Jouni complained although this code couldn't be
> triggered. I think Jouni's objections will be addressed with nl80211
> work though, so maybe we can remove it for now anyway?

If I understood correctly, the proposed change was removing 'capab'
information from scan results(?). If that is the case, that would break
wpa_supplicant network selection since there would be no information on
whether the network is using encryption or not (privacy flag) and
whether it is a BSS or an IBSS. Consequently, I obviously continue to
object this type of change as long as WE is used for getting scan
results.

--
Jouni Malinen PGP id EFC895FA