station: check supported frequencies in neighbor report

If the report has an unsupported frequency don't add it to the list.
This commit is contained in:
James Prestwood 2022-02-25 14:03:37 -08:00 committed by Denis Kenzior
parent 69a5ccbe5c
commit 2f50038363
1 changed files with 6 additions and 0 deletions

View File

@ -1715,6 +1715,8 @@ static void parse_neighbor_report(struct station *station,
struct scan_freq_set *freq_set_md, *freq_set_no_md;
uint32_t current_freq = 0;
struct handshake_state *hs = netdev_get_handshake(station->netdev);
const struct scan_freq_set *supported =
wiphy_get_supported_freqs(station->wiphy);
freq_set_md = scan_freq_set_new();
freq_set_no_md = scan_freq_set_new();
@ -1751,6 +1753,10 @@ static void parse_neighbor_report(struct station *station,
if (!(band & wiphy_get_supported_bands(station->wiphy)))
continue;
/* Skip if frequency is not supported */
if (!scan_freq_set_contains(supported, freq))
continue;
if (!memcmp(info.addr,
station->connected_bss->addr, ETH_ALEN)) {
/*