diff options
Diffstat (limited to 'net/wireless/ibss.c')
-rw-r--r-- | net/wireless/ibss.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/wireless/ibss.c b/net/wireless/ibss.c index c92b542d54b0..a5330c5a5477 100644 --- a/net/wireless/ibss.c +++ b/net/wireless/ibss.c | |||
@@ -92,8 +92,12 @@ void cfg80211_clear_ibss(struct net_device *dev, bool nowext) | |||
92 | int cfg80211_leave_ibss(struct cfg80211_registered_device *rdev, | 92 | int cfg80211_leave_ibss(struct cfg80211_registered_device *rdev, |
93 | struct net_device *dev, bool nowext) | 93 | struct net_device *dev, bool nowext) |
94 | { | 94 | { |
95 | struct wireless_dev *wdev = dev->ieee80211_ptr; | ||
95 | int err; | 96 | int err; |
96 | 97 | ||
98 | if (!wdev->ssid_len) | ||
99 | return -ENOLINK; | ||
100 | |||
97 | err = rdev->ops->leave_ibss(&rdev->wiphy, dev); | 101 | err = rdev->ops->leave_ibss(&rdev->wiphy, dev); |
98 | 102 | ||
99 | if (err) | 103 | if (err) |