diff options
Diffstat (limited to 'net/wireless')
| -rw-r--r-- | net/wireless/core.c | 3 | ||||
| -rw-r--r-- | net/wireless/mlme.c | 2 | ||||
| -rw-r--r-- | net/wireless/scan.c | 1 | ||||
| -rw-r--r-- | net/wireless/sme.c | 2 | ||||
| -rw-r--r-- | net/wireless/wext-compat.c | 40 | ||||
| -rw-r--r-- | net/wireless/wext-compat.h | 5 |
6 files changed, 53 insertions, 0 deletions
diff --git a/net/wireless/core.c b/net/wireless/core.c index 442c9f389799..f9fee65dc06a 100644 --- a/net/wireless/core.c +++ b/net/wireless/core.c | |||
| @@ -19,6 +19,7 @@ | |||
| 19 | #include "core.h" | 19 | #include "core.h" |
| 20 | #include "sysfs.h" | 20 | #include "sysfs.h" |
| 21 | #include "debugfs.h" | 21 | #include "debugfs.h" |
| 22 | #include "wext-compat.h" | ||
| 22 | 23 | ||
| 23 | /* name for sysfs, %d is appended */ | 24 | /* name for sysfs, %d is appended */ |
| 24 | #define PHY_NAME "phy" | 25 | #define PHY_NAME "phy" |
| @@ -665,6 +666,8 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb, | |||
| 665 | wdev->sme_state = CFG80211_SME_IDLE; | 666 | wdev->sme_state = CFG80211_SME_IDLE; |
| 666 | mutex_unlock(&rdev->devlist_mtx); | 667 | mutex_unlock(&rdev->devlist_mtx); |
| 667 | #ifdef CONFIG_WIRELESS_EXT | 668 | #ifdef CONFIG_WIRELESS_EXT |
| 669 | if (!dev->wireless_handlers) | ||
| 670 | dev->wireless_handlers = &cfg80211_wext_handler; | ||
| 668 | wdev->wext.default_key = -1; | 671 | wdev->wext.default_key = -1; |
| 669 | wdev->wext.default_mgmt_key = -1; | 672 | wdev->wext.default_mgmt_key = -1; |
| 670 | wdev->wext.connect.auth_type = NL80211_AUTHTYPE_AUTOMATIC; | 673 | wdev->wext.connect.auth_type = NL80211_AUTHTYPE_AUTOMATIC; |
diff --git a/net/wireless/mlme.c b/net/wireless/mlme.c index 30058a80d7af..097a87d7bae1 100644 --- a/net/wireless/mlme.c +++ b/net/wireless/mlme.c | |||
| @@ -8,7 +8,9 @@ | |||
| 8 | #include <linux/module.h> | 8 | #include <linux/module.h> |
| 9 | #include <linux/netdevice.h> | 9 | #include <linux/netdevice.h> |
| 10 | #include <linux/nl80211.h> | 10 | #include <linux/nl80211.h> |
| 11 | #include <linux/wireless.h> | ||
| 11 | #include <net/cfg80211.h> | 12 | #include <net/cfg80211.h> |
| 13 | #include <net/iw_handler.h> | ||
| 12 | #include "core.h" | 14 | #include "core.h" |
| 13 | #include "nl80211.h" | 15 | #include "nl80211.h" |
| 14 | 16 | ||
diff --git a/net/wireless/scan.c b/net/wireless/scan.c index 2a2683f6c04a..67714d7ed5b4 100644 --- a/net/wireless/scan.c +++ b/net/wireless/scan.c | |||
| @@ -14,6 +14,7 @@ | |||
| 14 | #include <net/iw_handler.h> | 14 | #include <net/iw_handler.h> |
| 15 | #include "core.h" | 15 | #include "core.h" |
| 16 | #include "nl80211.h" | 16 | #include "nl80211.h" |
| 17 | #include "wext-compat.h" | ||
| 17 | 18 | ||
| 18 | #define IEEE80211_SCAN_RESULT_EXPIRE (15 * HZ) | 19 | #define IEEE80211_SCAN_RESULT_EXPIRE (15 * HZ) |
| 19 | 20 | ||
diff --git a/net/wireless/sme.c b/net/wireless/sme.c index a19741097989..d2b5d4ce0a00 100644 --- a/net/wireless/sme.c +++ b/net/wireless/sme.c | |||
| @@ -8,6 +8,8 @@ | |||
| 8 | #include <linux/etherdevice.h> | 8 | #include <linux/etherdevice.h> |
| 9 | #include <linux/if_arp.h> | 9 | #include <linux/if_arp.h> |
| 10 | #include <linux/workqueue.h> | 10 | #include <linux/workqueue.h> |
| 11 | #include <linux/wireless.h> | ||
| 12 | #include <net/iw_handler.h> | ||
| 11 | #include <net/cfg80211.h> | 13 | #include <net/cfg80211.h> |
| 12 | #include <net/rtnetlink.h> | 14 | #include <net/rtnetlink.h> |
| 13 | #include "nl80211.h" | 15 | #include "nl80211.h" |
diff --git a/net/wireless/wext-compat.c b/net/wireless/wext-compat.c index 083e4c33d95d..e4e90e249bab 100644 --- a/net/wireless/wext-compat.c +++ b/net/wireless/wext-compat.c | |||
| @@ -1397,3 +1397,43 @@ int cfg80211_wext_giwessid(struct net_device *dev, | |||
| 1397 | } | 1397 | } |
| 1398 | } | 1398 | } |
| 1399 | EXPORT_SYMBOL_GPL(cfg80211_wext_giwessid); | 1399 | EXPORT_SYMBOL_GPL(cfg80211_wext_giwessid); |
| 1400 | |||
| 1401 | static const iw_handler cfg80211_handlers[] = { | ||
| 1402 | [IW_IOCTL_IDX(SIOCGIWNAME)] = (iw_handler) cfg80211_wext_giwname, | ||
| 1403 | [IW_IOCTL_IDX(SIOCSIWFREQ)] = (iw_handler) cfg80211_wext_siwfreq, | ||
| 1404 | [IW_IOCTL_IDX(SIOCGIWFREQ)] = (iw_handler) cfg80211_wext_giwfreq, | ||
| 1405 | [IW_IOCTL_IDX(SIOCSIWMODE)] = (iw_handler) cfg80211_wext_siwmode, | ||
| 1406 | [IW_IOCTL_IDX(SIOCGIWMODE)] = (iw_handler) cfg80211_wext_giwmode, | ||
| 1407 | [IW_IOCTL_IDX(SIOCGIWRANGE)] = (iw_handler) cfg80211_wext_giwrange, | ||
| 1408 | [IW_IOCTL_IDX(SIOCSIWAP)] = (iw_handler) cfg80211_wext_siwap, | ||
| 1409 | [IW_IOCTL_IDX(SIOCGIWAP)] = (iw_handler) cfg80211_wext_giwap, | ||
| 1410 | [IW_IOCTL_IDX(SIOCSIWMLME)] = (iw_handler) cfg80211_wext_siwmlme, | ||
| 1411 | [IW_IOCTL_IDX(SIOCSIWSCAN)] = (iw_handler) cfg80211_wext_siwscan, | ||
| 1412 | [IW_IOCTL_IDX(SIOCGIWSCAN)] = (iw_handler) cfg80211_wext_giwscan, | ||
| 1413 | [IW_IOCTL_IDX(SIOCSIWESSID)] = (iw_handler) cfg80211_wext_siwessid, | ||
| 1414 | [IW_IOCTL_IDX(SIOCGIWESSID)] = (iw_handler) cfg80211_wext_giwessid, | ||
| 1415 | [IW_IOCTL_IDX(SIOCSIWRATE)] = (iw_handler) cfg80211_wext_siwrate, | ||
| 1416 | [IW_IOCTL_IDX(SIOCGIWRATE)] = (iw_handler) cfg80211_wext_giwrate, | ||
| 1417 | [IW_IOCTL_IDX(SIOCSIWRTS)] = (iw_handler) cfg80211_wext_siwrts, | ||
| 1418 | [IW_IOCTL_IDX(SIOCGIWRTS)] = (iw_handler) cfg80211_wext_giwrts, | ||
| 1419 | [IW_IOCTL_IDX(SIOCSIWFRAG)] = (iw_handler) cfg80211_wext_siwfrag, | ||
| 1420 | [IW_IOCTL_IDX(SIOCGIWFRAG)] = (iw_handler) cfg80211_wext_giwfrag, | ||
| 1421 | [IW_IOCTL_IDX(SIOCSIWTXPOW)] = (iw_handler) cfg80211_wext_siwtxpower, | ||
| 1422 | [IW_IOCTL_IDX(SIOCGIWTXPOW)] = (iw_handler) cfg80211_wext_giwtxpower, | ||
| 1423 | [IW_IOCTL_IDX(SIOCSIWRETRY)] = (iw_handler) cfg80211_wext_siwretry, | ||
| 1424 | [IW_IOCTL_IDX(SIOCGIWRETRY)] = (iw_handler) cfg80211_wext_giwretry, | ||
| 1425 | [IW_IOCTL_IDX(SIOCSIWENCODE)] = (iw_handler) cfg80211_wext_siwencode, | ||
| 1426 | [IW_IOCTL_IDX(SIOCGIWENCODE)] = (iw_handler) cfg80211_wext_giwencode, | ||
| 1427 | [IW_IOCTL_IDX(SIOCSIWPOWER)] = (iw_handler) cfg80211_wext_siwpower, | ||
| 1428 | [IW_IOCTL_IDX(SIOCGIWPOWER)] = (iw_handler) cfg80211_wext_giwpower, | ||
| 1429 | [IW_IOCTL_IDX(SIOCSIWGENIE)] = (iw_handler) cfg80211_wext_siwgenie, | ||
| 1430 | [IW_IOCTL_IDX(SIOCSIWAUTH)] = (iw_handler) cfg80211_wext_siwauth, | ||
| 1431 | [IW_IOCTL_IDX(SIOCGIWAUTH)] = (iw_handler) cfg80211_wext_giwauth, | ||
| 1432 | [IW_IOCTL_IDX(SIOCSIWENCODEEXT)]= (iw_handler) cfg80211_wext_siwencodeext, | ||
| 1433 | }; | ||
| 1434 | |||
| 1435 | const struct iw_handler_def cfg80211_wext_handler = { | ||
| 1436 | .num_standard = ARRAY_SIZE(cfg80211_handlers), | ||
| 1437 | .standard = cfg80211_handlers, | ||
| 1438 | .get_wireless_stats = cfg80211_wireless_stats, | ||
| 1439 | }; | ||
diff --git a/net/wireless/wext-compat.h b/net/wireless/wext-compat.h index c0310d93c2e5..9a3774749589 100644 --- a/net/wireless/wext-compat.h +++ b/net/wireless/wext-compat.h | |||
| @@ -1,6 +1,9 @@ | |||
| 1 | #ifndef __WEXT_COMPAT | 1 | #ifndef __WEXT_COMPAT |
| 2 | #define __WEXT_COMPAT | 2 | #define __WEXT_COMPAT |
| 3 | 3 | ||
| 4 | #include <net/iw_handler.h> | ||
| 5 | #include <linux/wireless.h> | ||
| 6 | |||
| 4 | int cfg80211_ibss_wext_siwfreq(struct net_device *dev, | 7 | int cfg80211_ibss_wext_siwfreq(struct net_device *dev, |
| 5 | struct iw_request_info *info, | 8 | struct iw_request_info *info, |
| 6 | struct iw_freq *freq, char *extra); | 9 | struct iw_freq *freq, char *extra); |
| @@ -42,4 +45,6 @@ int cfg80211_mgd_wext_giwessid(struct net_device *dev, | |||
| 42 | struct ieee80211_channel *cfg80211_wext_freq(struct wiphy *wiphy, | 45 | struct ieee80211_channel *cfg80211_wext_freq(struct wiphy *wiphy, |
| 43 | struct iw_freq *freq); | 46 | struct iw_freq *freq); |
| 44 | 47 | ||
| 48 | |||
| 49 | extern const struct iw_handler_def cfg80211_wext_handler; | ||
| 45 | #endif /* __WEXT_COMPAT */ | 50 | #endif /* __WEXT_COMPAT */ |
