Home | History | Annotate | Download | only in wpa_supplicant

Lines Matching refs:resp

183 static void wpas_sd_add_empty(struct wpabuf *resp, u8 srv_proto,
188 if (wpabuf_tailroom(resp) < 5)
192 len_pos = wpabuf_put(resp, 2);
193 wpabuf_put_u8(resp, srv_proto);
194 wpabuf_put_u8(resp, srv_trans_id);
196 wpabuf_put_u8(resp, status);
198 WPA_PUT_LE16(len_pos, (u8 *) wpabuf_put(resp, 0) - len_pos - 2);
202 static void wpas_sd_add_proto_not_avail(struct wpabuf *resp, u8 srv_proto,
205 wpas_sd_add_empty(resp, srv_proto, srv_trans_id,
210 static void wpas_sd_add_bad_request(struct wpabuf *resp, u8 srv_proto,
213 wpas_sd_add_empty(resp, srv_proto, srv_trans_id, P2P_SD_BAD_REQUEST);
217 static void wpas_sd_add_not_found(struct wpabuf *resp, u8 srv_proto,
220 wpas_sd_add_empty(resp, srv_proto, srv_trans_id,
226 struct wpabuf *resp, u8 srv_trans_id)
240 if (wpabuf_tailroom(resp) <
241 5 + wpabuf_len(bsrv->query) + wpabuf_len(bsrv->resp))
244 len_pos = wpabuf_put(resp, 2);
245 wpabuf_put_u8(resp, P2P_SERV_BONJOUR);
246 wpabuf_put_u8(resp, srv_trans_id);
248 wpabuf_put_u8(resp, P2P_SD_SUCCESS);
250 wpabuf_head(bsrv->resp),
251 wpabuf_len(bsrv->resp));
253 wpabuf_put_buf(resp, bsrv->query); /* Key */
254 wpabuf_put_buf(resp, bsrv->resp); /* Value */
255 WPA_PUT_LE16(len_pos, (u8 *) wpabuf_put(resp, 0) - len_pos -
289 struct wpabuf *resp, u8 srv_trans_id,
300 wpas_sd_add_proto_not_avail(resp, P2P_SERV_BONJOUR,
306 wpas_sd_all_bonjour(wpa_s, resp, srv_trans_id);
315 if (wpabuf_tailroom(resp) <
316 5 + query_len + wpabuf_len(bsrv->resp))
322 len_pos = wpabuf_put(resp, 2);
323 wpabuf_put_u8(resp, P2P_SERV_BONJOUR);
324 wpabuf_put_u8(resp, srv_trans_id);
327 wpabuf_put_u8(resp, P2P_SD_SUCCESS);
329 wpabuf_head(bsrv->resp),
330 wpabuf_len(bsrv->resp));
333 wpabuf_put_data(resp, query, query_len); /* Key */
334 wpabuf_put_buf(resp, bsrv->resp); /* Value */
336 WPA_PUT_LE16(len_pos, (u8 *) wpabuf_put(resp, 0) - len_pos - 2);
342 if (wpabuf_tailroom(resp) < 5)
346 len_pos = wpabuf_put(resp, 2);
347 wpabuf_put_u8(resp, P2P_SERV_BONJOUR);
348 wpabuf_put_u8(resp, srv_trans_id);
351 wpabuf_put_u8(resp, P2P_SD_REQUESTED_INFO_NOT_AVAILABLE);
353 WPA_PUT_LE16(len_pos, (u8 *) wpabuf_put(resp, 0) - len_pos -
360 struct wpabuf *resp, u8 srv_trans_id)
374 if (wpabuf_tailroom(resp) < 5 + 1 + os_strlen(usrv->service))
378 len_pos = wpabuf_put(resp, 2);
379 wpabuf_put_u8(resp, P2P_SERV_UPNP);
380 wpabuf_put_u8(resp, srv_trans_id);
383 wpabuf_put_u8(resp, P2P_SD_SUCCESS);
385 wpabuf_put_u8(resp, usrv->version);
388 wpabuf_put_str(resp, usrv->service);
389 WPA_PUT_LE16(len_pos, (u8 *) wpabuf_put(resp, 0) - len_pos -
396 struct wpabuf *resp, u8 srv_trans_id,
410 wpas_sd_add_proto_not_avail(resp, P2P_SERV_UPNP,
416 wpas_sd_all_upnp(wpa_s, resp, srv_trans_id);
420 if (wpabuf_tailroom(resp) < 5)
424 len_pos = wpabuf_put(resp, 2);
425 wpabuf_put_u8(resp, P2P_SERV_UPNP);
426 wpabuf_put_u8(resp, srv_trans_id);
444 if (wpabuf_tailroom(resp) < 2)
448 wpabuf_put_u8(resp, P2P_SD_SUCCESS);
450 wpabuf_put_u8(resp, version);
452 wpabuf_put_u8(resp, ',');
458 if (wpabuf_tailroom(resp) < os_strlen(usrv->service))
460 wpabuf_put_str(resp, usrv->service);
468 wpabuf_put_u8(resp, P2P_SD_REQUESTED_INFO_NOT_AVAILABLE);
472 WPA_PUT_LE16(len_pos, (u8 *) wpabuf_put(resp, 0) - len_pos - 2);
478 struct wpabuf *resp, u8 srv_trans_id,
489 wpas_sd_add_proto_not_avail(resp, P2P_SERV_WIFI_DISPLAY,
500 if (wpabuf_tailroom(resp) < 5)
510 len_pos = wpabuf_put(resp, 2);
511 wpabuf_put_u8(resp, P2P_SERV_WIFI_DISPLAY);
512 wpabuf_put_u8(resp, srv_trans_id);
513 wpabuf_put_u8(resp, P2P_SD_SUCCESS); /* Status Code */
518 wpabuf_tailroom(resp) >=
522 wpabuf_put_buf(resp, wpa_s->global->wfd_subelem[*pos]);
527 WPA_PUT_LE16(len_pos, (u8 *) wpabuf_put(resp, 0) - len_pos - 2);
558 struct wpabuf *resp, u8 srv_trans_id,
574 wpas_sd_add_proto_not_avail(resp, P2P_SERV_P2PS, srv_trans_id);
587 wpas_sd_add_bad_request(resp, P2P_SERV_P2PS, srv_trans_id);
617 if (wpabuf_tailroom(resp) <
621 len_pos = wpabuf_put(resp, 2);
622 wpabuf_put_u8(resp, P2P_SERV_P2PS);
623 wpabuf_put_u8(resp, srv_trans_id);
625 wpabuf_put_u8(resp, P2P_SD_SUCCESS);
626 count_pos = wpabuf_put(resp, 1);
628 } else if (wpabuf_tailroom(resp) <
643 wpabuf_put_le32(resp, adv_data->id);
646 wpabuf_put_be16(resp, adv_data->config_methods);
649 wpabuf_put_u8(resp, (u8) len);
650 resp, adv_data->svc_name, len);
653 wpabuf_put_u8(resp, adv_data->state);
656 wpabuf_put_le16(resp, (u16) svc_info_len);
657 wpabuf_put_data(resp, adv_data->svc_info, svc_info_len);
662 (u8 *) wpabuf_put(resp, 0) - len_pos - 2);
669 wpas_sd_add_not_found(resp, P2P_SERV_P2PS, srv_trans_id);
675 struct wpabuf *resp, u8 srv_trans_id)
685 wpas_sd_req_asp(wpa_s, resp, srv_trans_id, q, sizeof(q));
697 struct wpabuf *resp;
721 resp = wpabuf_alloc(10000);
722 if (resp == NULL)
732 wpabuf_free(resp);
751 wpas_sd_all_bonjour(wpa_s, resp, srv_trans_id);
752 wpas_sd_all_upnp(wpa_s, resp, srv_trans_id);
753 wpas_sd_all_asp(wpa_s, resp, srv_trans_id);
767 resp, P2P_SERV_ALL_SERVICES,
771 wpas_sd_all_bonjour(wpa_s, resp, srv_trans_id);
772 wpas_sd_all_upnp(wpa_s, resp, srv_trans_id);
773 wpas_sd_all_asp(wpa_s, resp, srv_trans_id);
776 wpas_sd_req_bonjour(wpa_s, resp, srv_trans_id,
780 wpas_sd_req_upnp(wpa_s, resp, srv_trans_id,
785 wpas_sd_req_wfd(wpa_s, resp, srv_trans_id,
790 wpas_sd_req_asp(wpa_s, resp, srv_trans_id,
796 wpas_sd_add_proto_not_avail(resp, srv_proto,
808 wpas_p2p_sd_response(wpa_s, freq, sa, dialog_token, resp);
810 wpabuf_free(resp);
1131 wpabuf_free(bsrv->resp);
1209 struct wpabuf *query, struct wpabuf *resp)
1219 bsrv->resp = wpabuf_dup(resp);
1220 if (!bsrv->resp)