[PATCH 03/23] cfg80211: allow drivers that can't scan for specific ssids

David Kilroy
2009-06-18T22:21:46Z

Acked-by: Johannes Berg <johannes@sipsolutions.net>
---
net/wireless/core.c | 3 ---
net/wireless/wext-compat.c | 3 ++-
2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/net/wireless/core.c b/net/wireless/core.c
index d585029..a98670c 100644
--- a/net/wireless/core.c
+++ b/net/wireless/core.c
@@ -346,9 +346,6 @@ int wiphy_register(struct wiphy *wiphy)
int i;
u16 ifmodes = wiphy->interface_modes;

- if (WARN_ON(wiphy->max_scan_ssids < 1))
- return -EINVAL;
-
/* sanity check ifmodes */
WARN_ON(!ifmodes);
ifmodes &= ((1 << __NL80211_IFTYPE_AFTER_LAST) - 1) & ~1;
diff --git a/net/wireless/wext-compat.c b/net/wireless/wext-compat.c
index 7dbe6c6..bb97061 100644
--- a/net/wireless/wext-compat.c
+++ b/net/wireless/wext-compat.c
@@ -247,7 +247,8 @@ int cfg80211_wext_giwrange(struct net_device *dev,
IW_EVENT_CAPA_SET(range->event_capa, SIOCGIWAP);
IW_EVENT_CAPA_SET(range->event_capa, SIOCGIWSCAN);

- range->scan_capa |= IW_SCAN_CAPA_ESSID;
+ if (wdev->wiphy->max_scan_ssids > 0)
+ range->scan_capa |= IW_SCAN_CAPA_ESSID;

return 0;
}
--
1.6.0.6