• Johannes Berg's avatar
    mac80211: fix dtim_period in hidden SSID AP association · 826262c3
    Johannes Berg authored
    When AP's SSID is hidden the BSS can appear several times in
    cfg80211's BSS list: once with a zero-length SSID that comes
    from the beacon, and once for each SSID from probe reponses.
    
    Since the mac80211 stores its data in ieee80211_bss which
    is embedded into cfg80211_bss, mac80211's data will be
    duplicated too.
    
    This becomes a problem when a driver needs the dtim_period
    since this data exists only in the beacon's instance in
    cfg80211 bss table which isn't the instance that is used
    when associating.
    
    Remove the DTIM period from the BSS table and track it
    explicitly to avoid this problem.
    
    Cc: stable@vger.kernel.org
    Tested-by: default avatarEfi Tubul <efi.tubul@intel.com>
    Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    826262c3
mlme.c 112 KB