aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2009-07-27 06:01:52 -0400
committerJohn W. Linville <linville@tuxdriver.com>2009-07-29 15:46:18 -0400
commit1f9298f96082692bdfe73af6fc2167f627f21647 (patch)
treeac99b1e27f93e0f4296112af23f78ab7e3a36144 /net
parent562e482265ac4d660d9f0114419591d62f44361d (diff)
cfg80211: combine IWESSID handlers
Since we now have handlers IWESSID for all modes, we can combine them into one. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net')
-rw-r--r--net/mac80211/wext.c35
-rw-r--r--net/wireless/ibss.c4
-rw-r--r--net/wireless/wext-compat.c34
-rw-r--r--net/wireless/wext-compat.h12
-rw-r--r--net/wireless/wext-sme.c4
5 files changed, 48 insertions, 41 deletions
diff --git a/net/mac80211/wext.c b/net/mac80211/wext.c
index 72866c8b8c3d..aa250c3e8fda 100644
--- a/net/mac80211/wext.c
+++ b/net/mac80211/wext.c
@@ -27,37 +27,6 @@
27#include "aes_ccm.h" 27#include "aes_ccm.h"
28 28
29 29
30static int ieee80211_ioctl_siwessid(struct net_device *dev,
31 struct iw_request_info *info,
32 struct iw_point *data, char *ssid)
33{
34 struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);
35
36 if (sdata->vif.type == NL80211_IFTYPE_ADHOC)
37 return cfg80211_ibss_wext_siwessid(dev, info, data, ssid);
38 else if (sdata->vif.type == NL80211_IFTYPE_STATION)
39 return cfg80211_mgd_wext_siwessid(dev, info, data, ssid);
40
41 return -EOPNOTSUPP;
42}
43
44
45static int ieee80211_ioctl_giwessid(struct net_device *dev,
46 struct iw_request_info *info,
47 struct iw_point *data, char *ssid)
48{
49 struct ieee80211_sub_if_data *sdata;
50
51 sdata = IEEE80211_DEV_TO_SUB_IF(dev);
52
53 if (sdata->vif.type == NL80211_IFTYPE_ADHOC)
54 return cfg80211_ibss_wext_giwessid(dev, info, data, ssid);
55 else if (sdata->vif.type == NL80211_IFTYPE_STATION)
56 return cfg80211_mgd_wext_giwessid(dev, info, data, ssid);
57
58 return -EOPNOTSUPP;
59}
60
61 30
62/* Structures to export the Wireless Handlers */ 31/* Structures to export the Wireless Handlers */
63 32
@@ -89,8 +58,8 @@ static const iw_handler ieee80211_handler[] =
89 (iw_handler) NULL, /* SIOCGIWAPLIST */ 58 (iw_handler) NULL, /* SIOCGIWAPLIST */
90 (iw_handler) cfg80211_wext_siwscan, /* SIOCSIWSCAN */ 59 (iw_handler) cfg80211_wext_siwscan, /* SIOCSIWSCAN */
91 (iw_handler) cfg80211_wext_giwscan, /* SIOCGIWSCAN */ 60 (iw_handler) cfg80211_wext_giwscan, /* SIOCGIWSCAN */
92 (iw_handler) ieee80211_ioctl_siwessid, /* SIOCSIWESSID */ 61 (iw_handler) cfg80211_wext_siwessid, /* SIOCSIWESSID */
93 (iw_handler) ieee80211_ioctl_giwessid, /* SIOCGIWESSID */ 62 (iw_handler) cfg80211_wext_giwessid, /* SIOCGIWESSID */
94 (iw_handler) NULL, /* SIOCSIWNICKN */ 63 (iw_handler) NULL, /* SIOCSIWNICKN */
95 (iw_handler) NULL, /* SIOCGIWNICKN */ 64 (iw_handler) NULL, /* SIOCGIWNICKN */
96 (iw_handler) NULL, /* -- hole -- */ 65 (iw_handler) NULL, /* -- hole -- */
diff --git a/net/wireless/ibss.c b/net/wireless/ibss.c
index f955225ed911..4d7a084b35e2 100644
--- a/net/wireless/ibss.c
+++ b/net/wireless/ibss.c
@@ -381,8 +381,6 @@ int cfg80211_ibss_wext_siwessid(struct net_device *dev,
381 381
382 return err; 382 return err;
383} 383}
384/* temporary symbol - mark GPL - in the future the handler won't be */
385EXPORT_SYMBOL_GPL(cfg80211_ibss_wext_siwessid);
386 384
387int cfg80211_ibss_wext_giwessid(struct net_device *dev, 385int cfg80211_ibss_wext_giwessid(struct net_device *dev,
388 struct iw_request_info *info, 386 struct iw_request_info *info,
@@ -410,8 +408,6 @@ int cfg80211_ibss_wext_giwessid(struct net_device *dev,
410 408
411 return 0; 409 return 0;
412} 410}
413/* temporary symbol - mark GPL - in the future the handler won't be */
414EXPORT_SYMBOL_GPL(cfg80211_ibss_wext_giwessid);
415 411
416int cfg80211_ibss_wext_siwap(struct net_device *dev, 412int cfg80211_ibss_wext_siwap(struct net_device *dev,
417 struct iw_request_info *info, 413 struct iw_request_info *info,
diff --git a/net/wireless/wext-compat.c b/net/wireless/wext-compat.c
index c27774bd0107..083e4c33d95d 100644
--- a/net/wireless/wext-compat.c
+++ b/net/wireless/wext-compat.c
@@ -1363,3 +1363,37 @@ int cfg80211_wext_giwap(struct net_device *dev,
1363 } 1363 }
1364} 1364}
1365EXPORT_SYMBOL_GPL(cfg80211_wext_giwap); 1365EXPORT_SYMBOL_GPL(cfg80211_wext_giwap);
1366
1367int cfg80211_wext_siwessid(struct net_device *dev,
1368 struct iw_request_info *info,
1369 struct iw_point *data, char *ssid)
1370{
1371 struct wireless_dev *wdev = dev->ieee80211_ptr;
1372
1373 switch (wdev->iftype) {
1374 case NL80211_IFTYPE_ADHOC:
1375 return cfg80211_ibss_wext_siwessid(dev, info, data, ssid);
1376 case NL80211_IFTYPE_STATION:
1377 return cfg80211_mgd_wext_siwessid(dev, info, data, ssid);
1378 default:
1379 return -EOPNOTSUPP;
1380 }
1381}
1382EXPORT_SYMBOL_GPL(cfg80211_wext_siwessid);
1383
1384int cfg80211_wext_giwessid(struct net_device *dev,
1385 struct iw_request_info *info,
1386 struct iw_point *data, char *ssid)
1387{
1388 struct wireless_dev *wdev = dev->ieee80211_ptr;
1389
1390 switch (wdev->iftype) {
1391 case NL80211_IFTYPE_ADHOC:
1392 return cfg80211_ibss_wext_giwessid(dev, info, data, ssid);
1393 case NL80211_IFTYPE_STATION:
1394 return cfg80211_mgd_wext_giwessid(dev, info, data, ssid);
1395 default:
1396 return -EOPNOTSUPP;
1397 }
1398}
1399EXPORT_SYMBOL_GPL(cfg80211_wext_giwessid);
diff --git a/net/wireless/wext-compat.h b/net/wireless/wext-compat.h
index 51028ebf19ae..c0310d93c2e5 100644
--- a/net/wireless/wext-compat.h
+++ b/net/wireless/wext-compat.h
@@ -13,6 +13,12 @@ int cfg80211_ibss_wext_siwap(struct net_device *dev,
13int cfg80211_ibss_wext_giwap(struct net_device *dev, 13int cfg80211_ibss_wext_giwap(struct net_device *dev,
14 struct iw_request_info *info, 14 struct iw_request_info *info,
15 struct sockaddr *ap_addr, char *extra); 15 struct sockaddr *ap_addr, char *extra);
16int cfg80211_ibss_wext_siwessid(struct net_device *dev,
17 struct iw_request_info *info,
18 struct iw_point *data, char *ssid);
19int cfg80211_ibss_wext_giwessid(struct net_device *dev,
20 struct iw_request_info *info,
21 struct iw_point *data, char *ssid);
16 22
17int cfg80211_mgd_wext_siwfreq(struct net_device *dev, 23int cfg80211_mgd_wext_siwfreq(struct net_device *dev,
18 struct iw_request_info *info, 24 struct iw_request_info *info,
@@ -26,6 +32,12 @@ int cfg80211_mgd_wext_siwap(struct net_device *dev,
26int cfg80211_mgd_wext_giwap(struct net_device *dev, 32int cfg80211_mgd_wext_giwap(struct net_device *dev,
27 struct iw_request_info *info, 33 struct iw_request_info *info,
28 struct sockaddr *ap_addr, char *extra); 34 struct sockaddr *ap_addr, char *extra);
35int cfg80211_mgd_wext_siwessid(struct net_device *dev,
36 struct iw_request_info *info,
37 struct iw_point *data, char *ssid);
38int cfg80211_mgd_wext_giwessid(struct net_device *dev,
39 struct iw_request_info *info,
40 struct iw_point *data, char *ssid);
29 41
30struct ieee80211_channel *cfg80211_wext_freq(struct wiphy *wiphy, 42struct ieee80211_channel *cfg80211_wext_freq(struct wiphy *wiphy,
31 struct iw_freq *freq); 43 struct iw_freq *freq);
diff --git a/net/wireless/wext-sme.c b/net/wireless/wext-sme.c
index 1aa31cc55113..7bacbd1c2af6 100644
--- a/net/wireless/wext-sme.c
+++ b/net/wireless/wext-sme.c
@@ -192,8 +192,6 @@ int cfg80211_mgd_wext_siwessid(struct net_device *dev,
192 cfg80211_unlock_rdev(wiphy_to_dev(wdev->wiphy)); 192 cfg80211_unlock_rdev(wiphy_to_dev(wdev->wiphy));
193 return err; 193 return err;
194} 194}
195/* temporary symbol - mark GPL - in the future the handler won't be */
196EXPORT_SYMBOL_GPL(cfg80211_mgd_wext_siwessid);
197 195
198int cfg80211_mgd_wext_giwessid(struct net_device *dev, 196int cfg80211_mgd_wext_giwessid(struct net_device *dev,
199 struct iw_request_info *info, 197 struct iw_request_info *info,
@@ -218,8 +216,6 @@ int cfg80211_mgd_wext_giwessid(struct net_device *dev,
218 216
219 return 0; 217 return 0;
220} 218}
221/* temporary symbol - mark GPL - in the future the handler won't be */
222EXPORT_SYMBOL_GPL(cfg80211_mgd_wext_giwessid);
223 219
224int cfg80211_mgd_wext_siwap(struct net_device *dev, 220int cfg80211_mgd_wext_siwap(struct net_device *dev,
225 struct iw_request_info *info, 221 struct iw_request_info *info,