|
@@ -3571,6 +3571,7 @@ static int nl80211_associate(struct sk_buff *skb, struct genl_info *info)
|
|
|
{
|
|
|
struct cfg80211_registered_device *rdev;
|
|
|
struct net_device *dev;
|
|
|
+ struct wireless_dev *wdev;
|
|
|
struct cfg80211_crypto_settings crypto;
|
|
|
struct ieee80211_channel *chan, *fixedchan;
|
|
|
const u8 *bssid, *ssid, *ie = NULL, *prev_bssid = NULL;
|
|
@@ -3616,7 +3617,8 @@ static int nl80211_associate(struct sk_buff *skb, struct genl_info *info)
|
|
|
}
|
|
|
|
|
|
mutex_lock(&rdev->devlist_mtx);
|
|
|
- fixedchan = rdev_fixed_channel(rdev, NULL);
|
|
|
+ wdev = dev->ieee80211_ptr;
|
|
|
+ fixedchan = rdev_fixed_channel(rdev, wdev);
|
|
|
if (fixedchan && chan != fixedchan) {
|
|
|
err = -EBUSY;
|
|
|
mutex_unlock(&rdev->devlist_mtx);
|