diff options
author | Malcolm Priestley <tvboxspy@gmail.com> | 2012-11-24 14:50:00 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-11-27 00:24:16 (GMT) |
commit | dfc935acc97965729d1ef2b7e52925d3f20ca09b (patch) | |
tree | bf3e0b139ac74af4070de8fb32e586135c117d7c /drivers | |
parent | 179f823dab054f3301903042cf47ae3e27442484 (diff) | |
download | linux-dfc935acc97965729d1ef2b7e52925d3f20ca09b.tar.xz |
staging: vt6656: extend wireless definitions to v22
Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/staging/vt6656/iwctl.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/drivers/staging/vt6656/iwctl.c b/drivers/staging/vt6656/iwctl.c index 1d44841..2cd8b0a 100644 --- a/drivers/staging/vt6656/iwctl.c +++ b/drivers/staging/vt6656/iwctl.c @@ -42,7 +42,6 @@ #include "control.h" #include "rndis.h" -#define SUPPORTED_WIRELESS_EXT 19 static const long frequency_list[] = { 2412, 2417, 2422, 2427, 2432, 2437, 2442, 2447, 2452, 2457, 2462, 2467, 2472, 2484, @@ -133,9 +132,9 @@ int iwctl_siwscan(struct net_device *dev, struct iw_request_info *info, pItemSSID = (PWLAN_IE_SSID)abyScanSSID; pItemSSID->byElementID = WLAN_EID_SSID; memcpy(pItemSSID->abySSID, req->essid, (int)req->essid_len); - if (pItemSSID->abySSID[req->essid_len - 1] == '\0') { + if (pItemSSID->abySSID[req->essid_len] == '\0') { if (req->essid_len > 0) - pItemSSID->len = req->essid_len - 1; + pItemSSID->len = req->essid_len; } else { pItemSSID->len = req->essid_len; } @@ -606,7 +605,7 @@ int iwctl_giwrange(struct net_device *dev, struct iw_request_info *info, range->txpower[0] = 100; range->num_txpower = 1; range->txpower_capa = IW_TXPOW_MWATT; - range->we_version_source = SUPPORTED_WIRELESS_EXT; + range->we_version_source = WIRELESS_EXT; range->we_version_compiled = WIRELESS_EXT; range->retry_capa = IW_RETRY_LIMIT | IW_RETRY_LIFETIME; range->retry_flags = IW_RETRY_LIMIT; @@ -801,9 +800,9 @@ int iwctl_siwessid(struct net_device *dev, struct iw_request_info *info, pItemSSID->byElementID = WLAN_EID_SSID; memcpy(pItemSSID->abySSID, extra, wrq->length); - if (pItemSSID->abySSID[wrq->length - 1] == '\0') { + if (pItemSSID->abySSID[wrq->length] == '\0') { if (wrq->length>0) - pItemSSID->len = wrq->length - 1; + pItemSSID->len = wrq->length; } else { pItemSSID->len = wrq->length; } @@ -1400,12 +1399,15 @@ int iwctl_giwpower(struct net_device *dev, struct iw_request_info *info, return 0; if ((wrq->flags & IW_POWER_TYPE) == IW_POWER_TIMEOUT) { - wrq->value = (int)((pMgmt->wListenInterval * pMgmt->wCurrBeaconPeriod) << 10); + wrq->value = (int)((pMgmt->wListenInterval * + pMgmt->wCurrBeaconPeriod) / 100); wrq->flags = IW_POWER_TIMEOUT; } else { - wrq->value = (int)((pMgmt->wListenInterval * pMgmt->wCurrBeaconPeriod) << 10); + wrq->value = (int)((pMgmt->wListenInterval * + pMgmt->wCurrBeaconPeriod) / 100); wrq->flags = IW_POWER_PERIOD; } + wrq->flags |= IW_POWER_ALL_R; return 0; } |