diff options
author | Stone Piao <piaoyun@marvell.com> | 2013-03-29 19:21:21 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-04-12 09:52:07 -0700 |
commit | 86489ad1d0346c94a575c2e370a57d3ffb9bd2ad (patch) | |
tree | 4d1a93fb166c82eaaff8ec4dfe1a6bab62213def /drivers/net | |
parent | eea464d4f60f3482680ca831327b8f6e0f75b52f (diff) |
mwifiex: limit channel number not to overflow memory
commit 901ceba4e81e9dd6b4a3c4c37ee22000a6c5c65f upstream.
Limit the channel number in scan request, or the driver scan
config structure memory will be overflowed.
Signed-off-by: Stone Piao <piaoyun@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/mwifiex/cfg80211.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/mwifiex/cfg80211.c b/drivers/net/wireless/mwifiex/cfg80211.c index cdb11b3964e..3eca7100222 100644 --- a/drivers/net/wireless/mwifiex/cfg80211.c +++ b/drivers/net/wireless/mwifiex/cfg80211.c @@ -1846,7 +1846,8 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy, } } - for (i = 0; i < request->n_channels; i++) { + for (i = 0; i < min_t(u32, request->n_channels, + MWIFIEX_USER_SCAN_CHAN_MAX); i++) { chan = request->channels[i]; priv->user_scan_cfg->chan_list[i].chan_number = chan->hw_value; priv->user_scan_cfg->chan_list[i].radio_type = chan->band; |