diff --git a/src/scan.c b/src/scan.c index efe96aa3..82a20985 100644 --- a/src/scan.c +++ b/src/scan.c @@ -956,6 +956,8 @@ static struct scan_bss *scan_parse_attr_bss(struct l_genl_attr *attr) bss->wsc = ie_tlv_extract_wsc_payload(data, len, &bss->wsc_size); + bss->p2p = ie_tlv_extract_p2p_payload(data, len, + &bss->p2p_size); break; } @@ -1120,6 +1122,7 @@ void scan_bss_free(struct scan_bss *bss) l_free(bss->rsne); l_free(bss->wpa); l_free(bss->wsc); + l_free(bss->p2p); l_free(bss->osen); l_free(bss->rc_ie); l_free(bss); diff --git a/src/scan.h b/src/scan.h index a02f487d..a76ee039 100644 --- a/src/scan.h +++ b/src/scan.h @@ -51,6 +51,8 @@ struct scan_bss { uint8_t *osen; uint8_t *wsc; /* Concatenated WSC IEs */ ssize_t wsc_size; /* Size of Concatenated WSC IEs */ + uint8_t *p2p; /* Concatenated P2P IEs */ + ssize_t p2p_size; /* Size of Concatenated P2P IEs */ uint8_t mde[3]; uint8_t ssid[32]; uint8_t ssid_len;