diff options
author | Johannes Berg <johannes.berg@intel.com> | 2011-07-20 02:52:16 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-07-20 23:04:38 +0400 |
commit | a401d2bb363d942245acdd81c5b5a754011696ee (patch) | |
tree | 1f05cf5d53b72576d101572aeca176320fc361df /net/wireless/util.c | |
parent | 70126f6105f86366fd97644937ef2180b906b7c8 (diff) | |
download | linux-a401d2bb363d942245acdd81c5b5a754011696ee.tar.xz |
cfg80211: fix scan crash on single-band cards
commit 58389c69150e6032504dfcd3edca6b1975c8b5bc
Author: Johannes Berg <johannes.berg@intel.com>
Date: Mon Jul 18 18:08:35 2011 +0200
cfg80211: allow userspace to control supported rates in scan
made single-band cards crash since it would always
access all wiphy->bands[]. Fix this and reject any
attempts in the new helper ieee80211_get_ratemask()
to do the same, rejecting rates configuration for
unsupported bands.
Reported-by: Pavel Roskin <proski@gnu.org>
Tested-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/wireless/util.c')
-rw-r--r-- | net/wireless/util.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/wireless/util.c b/net/wireless/util.c index a329429bfdd8..be75a3a0424e 100644 --- a/net/wireless/util.c +++ b/net/wireless/util.c @@ -1013,6 +1013,9 @@ int ieee80211_get_ratemask(struct ieee80211_supported_band *sband, { int i, j; + if (!sband) + return -EINVAL; + if (n_rates == 0 || n_rates > NL80211_MAX_SUPP_RATES) return -EINVAL; |