aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2014-04-09 16:32:16 -0400
committerJohannes Berg <johannes.berg@intel.com>2014-04-10 04:09:16 -0400
commit74f8274103b78bf227711e655656dc737ad2bda7 (patch)
treec369be9e13c6d5ee51380a0aca5daa9f86f16992
parent96998e3a2f6aeb6e7d91f6b1ced98d4b903d75fd (diff)
cfg80211: reject invalid IBSS BSSIDs in wext compat code
Don't allow using a multicast address as the BSSID, that isn't a valid configuration. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/wireless/ibss.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/wireless/ibss.c b/net/wireless/ibss.c
index e16cc132c58a..f55f6ffcfcec 100644
--- a/net/wireless/ibss.c
+++ b/net/wireless/ibss.c
@@ -481,6 +481,9 @@ int cfg80211_ibss_wext_siwap(struct net_device *dev,
481 if (is_zero_ether_addr(bssid) || is_broadcast_ether_addr(bssid)) 481 if (is_zero_ether_addr(bssid) || is_broadcast_ether_addr(bssid))
482 bssid = NULL; 482 bssid = NULL;
483 483
484 if (bssid && !is_valid_ether_addr(bssid))
485 return -EINVAL;
486
484 /* both automatic */ 487 /* both automatic */
485 if (!bssid && !wdev->wext.ibss.bssid) 488 if (!bssid && !wdev->wext.ibss.bssid)
486 return 0; 489 return 0;