Merge "wpa_supplicant(hidl): Set 'ieee80211w' when PMF required"
diff --git a/wpa_supplicant/p2p_supplicant_sd.c b/wpa_supplicant/p2p_supplicant_sd.c
index f8675e6..fb30584 100644
--- a/wpa_supplicant/p2p_supplicant_sd.c
+++ b/wpa_supplicant/p2p_supplicant_sd.c
@@ -559,9 +559,9 @@
const u8 *query, size_t query_len)
{
struct p2ps_advertisement *adv_data;
- const u8 *svc = &query[1];
+ const u8 *svc;
const u8 *info = NULL;
- size_t svc_len = query[0];
+ size_t svc_len;
size_t info_len = 0;
int prefix = 0;
u8 *count_pos = NULL;
@@ -569,6 +569,15 @@
wpa_hexdump(MSG_DEBUG, "P2P: SD Request for ASP", query, query_len);
+ if (query_len < 1) {
+ wpa_printf(MSG_DEBUG, "P2P: ASP bad request");
+ wpas_sd_add_bad_request(resp, P2P_SERV_P2PS, srv_trans_id);
+ return;
+ }
+
+ svc_len = query[0];
+ svc = &query[1];
+
if (!wpa_s->global->p2p) {
wpa_printf(MSG_DEBUG, "P2P: ASP protocol not available");
wpas_sd_add_proto_not_avail(resp, P2P_SERV_P2PS, srv_trans_id);