• Vamsi Krishna's avatar
    nl80211: Use different attrs for BSSID and random MAC addr in scan req · 2fa436b3
    Vamsi Krishna authored
    NL80211_ATTR_MAC was used to set both the specific BSSID to be scanned
    and the random MAC address to be used when privacy is enabled. When both
    the features are enabled, both the BSSID and the local MAC address were
    getting same value causing Probe Request frames to go with unintended
    DA. Hence, this has been fixed by using a different NL80211_ATTR_BSSID
    attribute to set the specific BSSID (which was the more recent addition
    in cfg80211) for a scan.
    
    Backwards compatibility with old userspace software is maintained to
    some extent by allowing NL80211_ATTR_MAC to be used to set the specific
    BSSID when scanning without enabling random MAC address use.
    
    Scanning with random source MAC address was introduced by commit
    ad2b26ab ("cfg80211: allow drivers to support random MAC addresses
    for scan") and the issue was introduced with the addition of the second
    user for the same attribute in commit 818965d3 ("cfg80211: Allow a
    scan request for a specific BSSID").
    
    Fixes: 818965d3 ("cfg80211: Allow a scan request for a specific BSSID")
    Signed-off-by: default avatarVamsi Krishna <vamsin@qti.qualcomm.com>
    Signed-off-by: default avatarJouni Malinen <jouni@qca.qualcomm.com>
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    2fa436b3
nl80211.c 386 KB