scan: parse Proxy ARP bit from extended capabilities

This commit is contained in:
James Prestwood 2021-11-04 10:57:54 -07:00 committed by Denis Kenzior
parent b4c20ef81c
commit fd85192a54
2 changed files with 18 additions and 0 deletions

View File

@ -1252,6 +1252,23 @@ static bool scan_parse_bss_information_elements(struct scan_bss *bss,
bss->rc_ie = l_memdup(iter.data - 2, iter.len + 2);
break;
case IE_TYPE_EXTENDED_CAPABILITIES:
/* 802.11-2020 9.4.2.26
*
* "The length of the Extended Capabilities field is
* variable. If fewer bits are received in an Extended
* Capabilities field than shown in Table 9-153, the
* rest of the Extended Capabilities field bits are
* assumed to be zero"
*
* Currently only Proxy ARP bit (12) is checked, and if
* not found, this is not a fatal error.
*/
if (iter.len < 2)
break;
bss->proxy_arp = test_bit(iter.data, 12);
}
}

View File

@ -86,6 +86,7 @@ struct scan_bss {
bool anqp_capable : 1;
bool hs20_capable : 1;
bool force_default_sae_group : 1;
bool proxy_arp : 1;
uint8_t cost_level : 3;
uint8_t cost_flags : 4;
};