diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-04-19 13:57:45 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-04-22 16:57:17 -0400 |
commit | 691597cb26f236ac7471f1adf925a134c86799d6 (patch) | |
tree | e89d91e496af082711b7c0789aaf0a985e7ba964 /net/mac80211/wext.c | |
parent | d726405af6c8c81d2ee5e6a29301c68b9d4c574f (diff) |
cfg80211/mac80211: move wext SIWMLME into cfg80211
Since we have ->deauth and ->disassoc we can support the
wext SIWMLME call directly without driver wext handlers.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/wext.c')
-rw-r--r-- | net/mac80211/wext.c | 25 |
1 files changed, 1 insertions, 24 deletions
diff --git a/net/mac80211/wext.c b/net/mac80211/wext.c index 1c4664b8b1a0..896704cf94e1 100644 --- a/net/mac80211/wext.c +++ b/net/mac80211/wext.c | |||
@@ -612,29 +612,6 @@ static int ieee80211_ioctl_giwretry(struct net_device *dev, | |||
612 | return 0; | 612 | return 0; |
613 | } | 613 | } |
614 | 614 | ||
615 | static int ieee80211_ioctl_siwmlme(struct net_device *dev, | ||
616 | struct iw_request_info *info, | ||
617 | struct iw_point *data, char *extra) | ||
618 | { | ||
619 | struct ieee80211_sub_if_data *sdata; | ||
620 | struct iw_mlme *mlme = (struct iw_mlme *) extra; | ||
621 | |||
622 | sdata = IEEE80211_DEV_TO_SUB_IF(dev); | ||
623 | if (!(sdata->vif.type == NL80211_IFTYPE_STATION)) | ||
624 | return -EINVAL; | ||
625 | |||
626 | switch (mlme->cmd) { | ||
627 | case IW_MLME_DEAUTH: | ||
628 | /* TODO: mlme->addr.sa_data */ | ||
629 | return ieee80211_sta_deauthenticate(sdata, mlme->reason_code); | ||
630 | case IW_MLME_DISASSOC: | ||
631 | /* TODO: mlme->addr.sa_data */ | ||
632 | return ieee80211_sta_disassociate(sdata, mlme->reason_code); | ||
633 | default: | ||
634 | return -EOPNOTSUPP; | ||
635 | } | ||
636 | } | ||
637 | |||
638 | 615 | ||
639 | static int ieee80211_ioctl_siwencode(struct net_device *dev, | 616 | static int ieee80211_ioctl_siwencode(struct net_device *dev, |
640 | struct iw_request_info *info, | 617 | struct iw_request_info *info, |
@@ -1076,7 +1053,7 @@ static const iw_handler ieee80211_handler[] = | |||
1076 | (iw_handler) NULL, /* SIOCGIWTHRSPY */ | 1053 | (iw_handler) NULL, /* SIOCGIWTHRSPY */ |
1077 | (iw_handler) ieee80211_ioctl_siwap, /* SIOCSIWAP */ | 1054 | (iw_handler) ieee80211_ioctl_siwap, /* SIOCSIWAP */ |
1078 | (iw_handler) ieee80211_ioctl_giwap, /* SIOCGIWAP */ | 1055 | (iw_handler) ieee80211_ioctl_giwap, /* SIOCGIWAP */ |
1079 | (iw_handler) ieee80211_ioctl_siwmlme, /* SIOCSIWMLME */ | 1056 | (iw_handler) cfg80211_wext_siwmlme, /* SIOCSIWMLME */ |
1080 | (iw_handler) NULL, /* SIOCGIWAPLIST */ | 1057 | (iw_handler) NULL, /* SIOCGIWAPLIST */ |
1081 | (iw_handler) cfg80211_wext_siwscan, /* SIOCSIWSCAN */ | 1058 | (iw_handler) cfg80211_wext_siwscan, /* SIOCSIWSCAN */ |
1082 | (iw_handler) cfg80211_wext_giwscan, /* SIOCGIWSCAN */ | 1059 | (iw_handler) cfg80211_wext_giwscan, /* SIOCGIWSCAN */ |