git: e1e90be05017 - main - LinuxKPI: 802.11: make sure bssid for scans (probe_req) is set

From: Bjoern A. Zeeb <bz_at_FreeBSD.org>
Date: Thu, 14 Sep 2023 21:21:14 UTC
The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=e1e90be05017c335862c938fd9d577e56f02af30

commit e1e90be05017c335862c938fd9d577e56f02af30
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2023-09-14 17:48:19 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2023-09-14 21:20:54 +0000

    LinuxKPI: 802.11: make sure bssid for scans (probe_req) is set
    
    In b0f73768220e9 we added bssid[] to struct cfg80211_scan_request
    likely while working on mt76 and did not need it (yet) back then.
    iwlwifi started to use the field in Linux f1fec51cda70f (April 2023).
    Without it set firmware crashes when trying to send probe requests
    ((empty) SSID also given to hw_scan).
    For now always set the field to the wildcard BSSID.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      3 days
---
 sys/compat/linuxkpi/common/src/linux_80211.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index 51d5bc2c4fc1..4b9cc598740b 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -2728,6 +2728,7 @@ sw_scan:
 		memcpy(hw_req->req.mac_addr, xxx, IEEE80211_ADDR_LEN);
 		memset(hw_req->req.mac_addr_mask, 0xxx, IEEE80211_ADDR_LEN);
 #endif
+		eth_broadcast_addr(hw_req->req.bssid);
 
 		hw_req->req.n_channels = nchan;
 		cpp = (struct linuxkpi_ieee80211_channel **)(hw_req + 1);