Lines Matching refs:p2p

186 void p2p_buf_add_device_info(struct wpabuf *buf, struct p2p_data *p2p,
198 wpabuf_put_data(buf, p2p->cfg->dev_addr, ETH_ALEN);
210 } else if (p2p->cfg->config_methods) {
211 methods |= p2p->cfg->config_methods &
222 wpabuf_put_data(buf, p2p->cfg->pri_dev_type,
223 sizeof(p2p->cfg->pri_dev_type));
226 wpabuf_put_u8(buf, p2p->cfg->num_sec_dev_types);
229 for (i = 0; i < p2p->cfg->num_sec_dev_types; i++)
230 wpabuf_put_data(buf, p2p->cfg->sec_dev_type[i],
234 nlen = p2p->cfg->dev_name ? os_strlen(p2p->cfg->dev_name) : 0;
237 wpabuf_put_data(buf, p2p->cfg->dev_name, nlen);
353 void p2p_buf_add_p2p_interface(struct wpabuf *buf, struct p2p_data *p2p)
359 wpabuf_put_data(buf, p2p->cfg->dev_addr, ETH_ALEN);
366 wpabuf_put_data(buf, p2p->cfg->dev_addr, ETH_ALEN);
387 void p2p_buf_add_service_hash(struct wpabuf *buf, struct p2p_data *p2p)
389 if (!p2p)
394 wpabuf_put_le16(buf, p2p->p2ps_seek_count * P2PS_HASH_LEN);
395 wpabuf_put_data(buf, p2p->p2ps_seek_hash,
396 p2p->p2ps_seek_count * P2PS_HASH_LEN);
398 p2p->p2ps_seek_hash, p2p->p2ps_seek_count * P2PS_HASH_LEN);
446 static int p2ps_wildcard_hash(struct p2p_data *p2p,
453 if (os_memcmp(test, p2p->wild_card_hash, P2PS_HASH_LEN) == 0)
462 static int p2p_wfa_service_adv(struct p2p_data *p2p)
466 for (adv = p2p->p2ps_adv_list; adv; adv = adv->next) {
476 static int p2p_buf_add_service_info(struct wpabuf *buf, struct p2p_data *p2p,
485 p2p_dbg(p2p, "Add service info for %s (adv_id=%u)", svc_name, adv_id);
491 p2p_dbg(p2p,
497 p2p_dbg(p2p,
507 p2p_dbg(p2p,
594 void p2p_buf_add_service_instance(struct wpabuf *buf, struct p2p_data *p2p,
609 p2ps_wildcard = p2ps_wildcard_hash(p2p, hash, hash_count) &&
610 p2p_wfa_service_adv(p2p);
633 p2p_buf_add_service_info(tmp_buf, p2p, 0, 0, P2PS_WILD_HASH_STR,
646 p2p_buf_add_service_info(tmp_buf, p2p,
736 int p2p_build_wps_ie(struct p2p_data *p2p, struct wpabuf *buf, int pw_id,
777 if (wps_build_uuid_e(buf, p2p->cfg->uuid) < 0 ||
779 p2p->cfg->manufacturer) < 0 ||
781 p2p->cfg->model_name) < 0 ||
783 p2p->cfg->model_number) < 0 ||
785 p2p->cfg->serial_number) < 0)
792 wpabuf_put_data(buf, p2p->cfg->pri_dev_type, WPS_DEV_TYPE_LEN);
794 if (p2p_add_wps_string(buf, ATTR_DEV_NAME, p2p->cfg->dev_name)
802 wpabuf_put_be16(buf, p2p->cfg->config_methods);
808 if (all_attr && p2p->cfg->num_sec_dev_types) {
810 4 + WPS_DEV_TYPE_LEN * p2p->cfg->num_sec_dev_types)
814 p2p->cfg->num_sec_dev_types);
815 wpabuf_put_data(buf, p2p->cfg->sec_dev_type,
817 p2p->cfg->num_sec_dev_types);
822 if (p2p->wps_vendor_ext[i] == NULL)
825 4 + wpabuf_len(p2p->wps_vendor_ext[i]))
828 wpabuf_put_be16(buf, wpabuf_len(p2p->wps_vendor_ext[i]));
829 wpabuf_put_buf(buf, p2p->wps_vendor_ext[i]);