mac80211: don't send null data packet when not associated
authorJohannes Berg <johannes.berg@intel.com>
Thu, 8 Nov 2012 13:06:28 +0000 (14:06 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 9 Nov 2012 16:31:47 +0000 (17:31 +0100)
On resume or firmware recovery, mac80211 sends a null
data packet to see if the AP is still around and hasn't
disconnected us. However, it always does this even if
it wasn't even connected before, leading to a warning
in the new channel context code. Fix this by checking
that it's associated.

Cc: stable@vger.kernel.org
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/util.c

index e6e4bda0528e02741f8ee17e4086703c53a85665..fa1d343faa4b7c8c636a0289bd0b8675e918c0e8 100644 (file)
@@ -1491,6 +1491,8 @@ int ieee80211_reconfig(struct ieee80211_local *local)
                list_for_each_entry(sdata, &local->interfaces, list) {
                        if (sdata->vif.type != NL80211_IFTYPE_STATION)
                                continue;
+                       if (!sdata->u.mgd.associated)
+                               continue;
 
                        ieee80211_send_nullfunc(local, sdata, 0);
                }