Lines Matching refs:p2p

18 #include "p2p/p2p.h"
99 #define P2P_MGMT_DEVICE_PREFIX "p2p-dev-"
213 if (p2p_supported_freq(wpa_s->global->p2p, freqs[i].freq))
228 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
241 p2p_set_own_freq_preference(wpa_s->global->p2p, freq);
256 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
284 if (p2p_scan_res_handler(wpa_s->global->p2p, bss->bssid,
290 p2p_scan_res_handled(wpa_s->global->p2p);
322 p2p_notify_scan_trigger_status(wpa_s->global->p2p, ret);
326 p2p_notify_scan_trigger_status(wpa_s->global->p2p, ret);
347 return p2p_supported_freq(wpa_s->global->p2p, freq);
364 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
385 wpa_s->wps->dev.p2p = 1;
426 if (p2p_supported_freq(wpa_s->global->p2p, freq))
432 ielen = p2p_scan_ie_buf_len(wpa_s->global->p2p);
442 p2p_scan_ie(wpa_s->global->p2p, ies, dev_id, bands);
455 radio_remove_works(wpa_s, "p2p-scan", 0);
456 if (radio_add_work(wpa_s, 0, "p2p-scan", 0, wpas_p2p_trigger_scan_cb,
547 "P2P: sup:%p ssid:%p disabled:%d p2p:%d mode:%d",
813 p2p_set_intended_addr(wpa_s->global->p2p,
825 p2p_set_intended_addr(wpa_s->global->p2p,
1030 struct wpabuf *p2p;
1046 if (p2p_get_interface_addr(wpa_s->global->p2p, bssid,
1057 p2p = wpa_bss_get_vendor_ie_multi(bss, P2P_IE_VENDOR_TYPE);
1058 if (p2p == NULL)
1059 p2p = wpa_bss_get_vendor_ie_multi_beacon(bss,
1061 if (p2p == NULL) {
1073 group_capab = p2p_get_group_capab(p2p);
1074 addr = p2p_get_go_dev_addr(p2p);
1083 wpabuf_free(p2p);
1490 if (wpa_s->global->p2p == NULL || wpa_s->global->p2p_disabled)
1505 p2p_send_action_cb(wpa_s->global->p2p, freq, dst, src, bssid, res);
1559 if (radio_work_pending(wpa_s, "p2p-send-action")) {
1560 wpa_printf(MSG_DEBUG, "P2P: Cannot schedule new p2p-send-action work since one is already pending");
1576 if (radio_add_work(wpa_s, freq, "p2p-send-action", 1,
1708 MAC2STR(psk->addr), psk->p2p);
1713 if (psk->p2p)
2042 os_snprintf(ifname, len, "p2p-%s-%d", ifname_ptr, wpa_s->p2p_group_idx);
2048 res = os_snprintf(ifname, len, "p2p-%d", wpa_s->p2p_group_idx);
2213 if (wpa_s->global->p2p)
2214 p2p_group_formation_failed(wpa_s->global->p2p);
2565 if (radio_add_work(wpa_s, freq, "p2p-listen", 0, wpas_start_listen_cb,
2877 if (p2p_supported_freq(wpa_s->global->p2p, freqs[c].freq))
2885 if (!p2p_supported_freq(wpa_s->global->p2p, freqs[i].freq))
3614 if (o->p2p == NO_P2P_SUPP)
3675 if (o->p2p == NO_P2P_SUPP)
4434 struct p2p_config p2p;
4443 if (global->p2p)
4452 os_memset(&p2p, 0, sizeof(p2p));
4453 p2p.cb_ctx = wpa_s;
4454 p2p.debug_print = wpas_p2p_debug_print;
4455 p2p.p2p_scan = wpas_p2p_scan;
4456 p2p.send_action = wpas_send_action;
4457 p2p.send_action_done = wpas_send_action_done;
4458 p2p.go_neg_completed = wpas_go_neg_completed;
4459 p2p.go_neg_req_rx = wpas_go_neg_req_rx;
4460 p2p.dev_found = wpas_dev_found;
4461 p2p.dev_lost = wpas_dev_lost;
4462 p2p.find_stopped = wpas_find_stopped;
4463 p2p.start_listen = wpas_start_listen;
4464 p2p.stop_listen = wpas_stop_listen;
4465 p2p.send_probe_resp = wpas_send_probe_resp;
4466 p2p.sd_request = wpas_sd_request;
4467 p2p.sd_response = wpas_sd_response;
4468 p2p.prov_disc_req = wpas_prov_disc_req;
4469 p2p.prov_disc_resp = wpas_prov_disc_resp;
4470 p2p.prov_disc_fail = wpas_prov_disc_fail;
4471 p2p.invitation_process = wpas_invitation_process;
4472 p2p.invitation_received = wpas_invitation_received;
4473 p2p.invitation_result = wpas_invitation_result;
4474 p2p.get_noa = wpas_get_noa;
4475 p2p.go_connected = wpas_go_connected;
4476 p2p.presence_resp = wpas_presence_resp;
4477 p2p.is_concurrent_session_active = wpas_is_concurrent_session_active;
4478 p2p.is_p2p_in_progress = _wpas_p2p_in_progress;
4479 p2p.get_persistent_group = wpas_get_persistent_group;
4480 p2p.get_go_info = wpas_get_go_info;
4481 p2p.remove_stale_groups = wpas_remove_stale_groups;
4482 p2p.p2ps_prov_complete = wpas_p2ps_prov_complete;
4483 p2p.prov_disc_resp_cb = wpas_prov_disc_resp_cb;
4484 p2p.p2ps_group_capability = p2ps_group_capability;
4485 p2p.get_pref_freq_list = wpas_p2p_get_pref_freq_list;
4488 os_memcpy(p2p.dev_addr, wpa_s->global->p2p_dev_addr, ETH_ALEN);
4489 p2p.dev_name = wpa_s->conf->device_name;
4490 p2p.manufacturer = wpa_s->conf->manufacturer;
4491 p2p.model_name = wpa_s->conf->model_name;
4492 p2p.model_number = wpa_s->conf->model_number;
4493 p2p.serial_number = wpa_s->conf->serial_number;
4495 os_memcpy(p2p.uuid, wpa_s->wps->uuid, 16);
4496 p2p.config_methods = wpa_s->wps->config_methods;
4499 if (wpas_p2p_setup_channels(wpa_s, &p2p.channels, &p2p.cli_channels)) {
4507 p2p.reg_class = wpa_s->conf->p2p_listen_reg_class;
4508 p2p.channel = wpa_s->conf->p2p_listen_channel;
4509 p2p.channel_forced = 1;
4515 if (p2p_config_get_random_social(&p2p, &p2p.reg_class,
4516 &p2p.channel,
4524 p2p.channel_forced = 0;
4527 p2p.reg_class, p2p.channel);
4531 p2p.op_reg_class = wpa_s->conf->p2p_oper_reg_class;
4532 p2p.op_channel = wpa_s->conf->p2p_oper_channel;
4533 p2p.cfg_op_channel = 1;
4535 "%d:%d", p2p.op_reg_class, p2p.op_channel);
4543 if (p2p_config_get_random_social(&p2p, &p2p.op_reg_class,
4544 &p2p.op_channel, NULL,
4548 p2p.op_reg_class = 0;
4549 p2p.op_channel = 0;
4553 p2p.cfg_op_channel = 0;
4555 "%d:%d", p2p.op_reg_class, p2p.op_channel);
4559 p2p.pref_chan = wpa_s->conf->p2p_pref_chan;
4560 p2p.num_pref_chan = wpa_s->conf->num_p2p_pref_chan;
4564 os_memcpy(p2p.country, wpa_s->conf->country, 2);
4565 p2p.country[2] = 0x04;
4567 os_memcpy(p2p.country, "XX\x04", 3);
4569 os_memcpy(p2p.pri_dev_type, wpa_s->conf->device_type,
4572 p2p.num_sec_dev_types = wpa_s->conf->num_sec_device_types;
4573 os_memcpy(p2p.sec_dev_type, wpa_s->conf->sec_device_type,
4574 p2p.num_sec_dev_types * WPS_DEV_TYPE_LEN);
4576 p2p.concurrent_operations = !!(wpa_s->drv_flags &
4579 p2p.max_peers = 100;
4582 p2p.ssid_postfix_len =
4584 if (p2p.ssid_postfix_len > sizeof(p2p.ssid_postfix))
4585 p2p.ssid_postfix_len = sizeof(p2p.ssid_postfix);
4586 os_memcpy(p2p.ssid_postfix, wpa_s->conf->p2p_ssid_postfix,
4587 p2p.ssid_postfix_len);
4590 p2p.p2p_intra_bss = wpa_s->conf->p2p_intra_bss;
4592 p2p.max_listen = wpa_s->max_remain_on_chan;
4596 p2p.passphrase_len = wpa_s->conf->p2p_passphrase_len;
4598 p2p.passphrase_len = 8;
4600 global->p2p = p2p_init(&p2p);
4601 if (global->p2p == NULL)
4609 global->p2p, wpa_s->conf->wps_vendor_ext[i]);
4612 p2p_set_no_go_freq(global->p2p, &wpa_s->conf->p2p_no_go_freq);
4632 wpa_s->global->p2p,
4705 p2p_deinit(global->p2p);
4706 global->p2p = NULL;
4744 p2p_set_config_timeout(wpa_s->global->p2p,
4747 return p2p_connect(wpa_s->global->p2p, peer_addr, wps_method,
4767 return p2p_authorize(wpa_s->global->p2p, peer_addr, wps_method,
4911 if (p2p_prov_disc_req(wpa_s->global->p2p,
4959 freq = p2p_get_oper_freq(wpa_s->global->p2p,
4962 p2p_get_interface_addr(wpa_s->global->p2p,
4975 freq = p2p_get_oper_freq(wpa_s->global->p2p,
5054 if ((p2p_get_provisioning_info(wpa_s->global->p2p,
5069 if (p2p_prov_disc_req(wpa_s->global->p2p,
5120 wpa_s->wps->dev.p2p = 1;
5135 oper_freq = p2p_get_oper_freq(wpa_s->global->p2p,
5145 ielen = p2p_scan_ie_buf_len(wpa_s->global->p2p);
5156 p2p_scan_ie(wpa_s->global->p2p, ies, NULL, bands);
5345 ret = p2p_supported_freq(wpa_s->global->p2p, freq);
5347 ret = p2p_supported_freq_cli(wpa_s->global->p2p, freq);
5405 (!p2p_supported_freq(wpa_s->global->p2p,
5503 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
5567 if (p2p_get_interface_addr(wpa_s->global->p2p, peer_addr,
5570 p2p_get_dev_addr(wpa_s->global->p2p, peer_addr,
5596 p2p_set_own_pref_freq_list(wpa_s->global->p2p, pref_freq_list, size);
5652 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
5659 p2p_listen_cb(wpa_s->global->p2p, wpa_s->pending_listen_freq,
5676 return p2p_listen(wpa_s->global->p2p, timeout);
5696 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
5700 if (p2p_listen_end(wpa_s->global->p2p, freq) > 0)
5712 p2p_stop_listen(wpa_s->global->p2p);
5773 (!p2p_supported_freq(wpa_s->global->p2p,
5801 p2p_supported_freq_go(wpa_s->global->p2p,
5819 p2p_supported_freq_go(wpa_s->global->p2p,
5828 if (!p2p_supported_freq_go(wpa_s->global->p2p, freq)) {
5838 if (freq > 0 && !p2p_supported_freq_go(wpa_s->global->p2p, freq)) {
5866 p2p_supported_freq_go(wpa_s->global->p2p, freq) &&
5884 p2p_supported_freq(wpa_s->global->p2p, params->freq))
5893 p2p_supported_freq(wpa_s->global->p2p, params->freq))
5901 p2p_supported_freq(wpa_s->global->p2p, params->freq))
5909 p2p_supported_freq(wpa_s->global->p2p, params->freq))
6017 if (!p2p_supported_freq_go(wpa_s->global->p2p, freq)) {
6152 cand = p2p_get_pref_freq(wpa_s->global->p2p, channels);
6336 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
6356 p2p_go_params(wpa_s->global->p2p, &params);
6547 if (!(hapd->conf->p2p & P2P_GROUP_OWNER)) {
6590 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL ||
6617 group = p2p_group_init(wpa_s->global->p2p, cfg);
6644 p2p_clear_provisioning_info(wpa_s->global->p2p, go_dev_addr);
6682 if (wpa_s->global->p2p)
6683 p2p_wps_success_cb(wpa_s->global->p2p, peer_addr);
6699 wpa_s->global->p2p,
6785 if (wpa_s->global->p2p == NULL || wpa_s->global->p2p_disabled) {
6790 return p2p_prov_disc_req(wpa_s->global->p2p, peer_addr, p2ps_prov,
6830 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL ||
6833 (wpa_s->global->p2p_disabled || !wpa_s->global->p2p) ?
6842 return p2p_find(wpa_s->global->p2p, timeout, type,
6859 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
6866 p2p_scan_res_handled(wpa_s->global->p2p);
6877 if (wpa_s->global->p2p)
6878 p2p_stop_find(wpa_s->global->p2p);
6907 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
6935 if (wpa_s->global->p2p)
6936 p2p_stop_find(wpa_s->global->p2p);
6964 if (wpa_s->global->p2p == NULL)
6970 ret = p2p_assoc_req_ie(wpa_s->global->p2p, bss->bssid, buf, len,
6985 if (wpa_s->global->p2p == NULL)
6988 switch (p2p_probe_req_rx(wpa_s->global->p2p, addr, dst, bssid,
7011 if (wpa_s->global->p2p == NULL)
7014 p2p_rx_action(wpa_s->global->p2p, da, sa, bssid, category, data, len,
7025 if (wpa_s->global->p2p == NULL)
7029 p2p_scan_ie(wpa_s->global->p2p, ies, NULL, bands);
7049 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7052 return p2p_reject(wpa_s->global->p2p, addr);
7114 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7117 p2p_set_own_pref_freq_list(wpa_s->global->p2p, pref_freq_list, size);
7134 return p2p_invite(wpa_s->global->p2p, peer_addr, role, bssid,
7202 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7213 return p2p_invite(wpa_s->global->p2p, peer_addr, role, bssid,
7294 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7302 ret = p2p_presence_req(wpa_s->global->p2p, wpa_s->bssid,
7315 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7318 return p2p_ext_listen(wpa_s->global->p2p, period, interval);
7414 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7418 p2p_deauth_notif(wpa_s->global->p2p, bssid, reason_code, ie,
7441 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7445 p2p_disassoc_notif(wpa_s->global->p2p, bssid, reason_code, ie,
7452 struct p2p_data *p2p = wpa_s->global->p2p;
7454 if (p2p == NULL)
7461 p2p_set_dev_name(p2p, wpa_s->conf->device_name);
7464 p2p_set_pri_dev_type(p2p, wpa_s->conf->device_type);
7468 p2p_set_config_methods(p2p, wpa_s->wps->config_methods);
7471 p2p_set_uuid(p2p, wpa_s->wps->uuid);
7474 p2p_set_manufacturer(p2p, wpa_s->conf->manufacturer);
7475 p2p_set_model_name(p2p, wpa_s->conf->model_name);
7476 p2p_set_model_number(p2p, wpa_s->conf->model_number);
7477 p2p_set_serial_number(p2p, wpa_s->conf->serial_number);
7481 p2p_set_sec_dev_types(p2p,
7487 p2p_remove_wps_vendor_extensions(p2p);
7492 p2p, wpa_s->conf->wps_vendor_ext[i]);
7502 p2p_set_country(p2p, country);
7506 p2p_set_ssid_postfix(p2p, (u8 *) wpa_s->conf->p2p_ssid_postfix,
7513 p2p_set_intra_bss_dist(p2p, wpa_s->conf->p2p_intra_bss);
7538 ret = p2p_set_listen_channel(p2p, reg_class, channel,
7565 ret = p2p_set_oper_channel(p2p, op_reg_class, op_channel,
7573 if (p2p_set_pref_chan(p2p, wpa_s->conf->num_p2p_pref_chan,
7579 if (p2p_set_no_go_freq(p2p, &wpa_s->conf->p2p_no_go_freq) < 0) {
7586 p2p_set_passphrase_len(p2p, wpa_s->conf->p2p_passphrase_len);
7602 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7606 p2p_set_cross_connect(wpa_s->global->p2p, enabled);
7768 if (wpa_s->global == NULL || wpa_s->global->p2p == NULL)
7785 p2p_update_channel_list(wpa_s->global->p2p, &chan, &cli_chan);
7814 if (global->p2p == NULL)
7823 peer = p2p_get_go_neg_peer(global->p2p);
7827 p2p_unauthorize(global->p2p, peer);
7895 struct p2p_data *p2p = wpa_s->global->p2p;
7896 if (p2p == NULL)
7898 p2p_set_best_channels(p2p, freq_24, freq_5, freq_overall);
7905 struct p2p_data *p2p = wpa_s->global->p2p;
7907 if (p2p == NULL)
7913 return p2p_unauthorize(p2p, peer);
7943 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
7946 ret = p2p_in_progress(wpa_s->global->p2p);
8062 if (wpa_s->global->p2p)
8063 p2p_wps_success_cb(wpa_s->global->p2p, addr);
8165 if ((iface_addr && !psk->p2p &&
8167 (!iface_addr && psk->p2p &&
8171 MACSTR " p2p=%u",
8172 MAC2STR(psk->addr), psk->p2p);
8215 p->p2p = 1;
8218 p->p2p = 0;
8241 p->p2p = 1;
8244 p->p2p = 0;
8253 MACSTR " (p2p=%u) to make room for a new one",
8254 MAC2STR(last->addr), last->p2p);
8481 struct wpabuf *p2p)
8486 if (p2p == NULL) {
8488 wpa_printf(MSG_DEBUG, "P2P: No p2p buffer for handover");
8493 ret = wpabuf_alloc(2 + wsc_len + 2 + wpabuf_len(p2p));
8496 wpabuf_free(p2p);
8503 wpabuf_put_be16(ret, wpabuf_len(p2p));
8504 wpabuf_put_buf(ret, p2p);
8507 wpabuf_free(p2p);
8554 struct wpabuf *wsc, *p2p;
8559 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL) {
8576 p2p = p2p_build_nfc_handover_req(wpa_s->global->p2p, cli_freq,
8580 return wpas_p2p_nfc_handover(ndef, wsc, p2p);
8587 struct wpabuf *wsc, *p2p;
8592 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
8609 p2p = p2p_build_nfc_handover_sel(wpa_s->global->p2p, cli_freq,
8613 return wpas_p2p_nfc_handover(ndef, wsc, p2p);
8701 return p2p_invite(wpa_s->global->p2p, params->peer->p2p_device_addr,
8741 p2p_unauthorize(wpa_s->global->p2p,
8808 res = p2p_process_nfc_connection_handover(wpa_s->global->p2p, &params);
8917 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
8931 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
8962 if (wpa_s->global->p2p == NULL)
8973 p2p_set_authorized_oob_dev_pw_id(wpa_s->global->p2p, 0,
9055 wpa_s->global->p2p, wpa_s->conf->wps_nfc_dev_pw_id, go_intent,
9081 curr_chan = p2p_get_listen_channel(wpa_s->global->p2p);
9097 p2p_set_listen_channel(wpa_s->global->p2p, 81, cand, 0);
9242 !p2p_supported_freq_go(wpa_s->global->p2p, params.freq)) {
9335 if (!p2p_supported_freq_go(wpa_s->global->p2p, freq) &&
9345 } else if (!p2p_supported_freq(wpa_s->global->p2p,
9474 if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
9484 if (wpa_s == wpa_s->global->p2p_init_wpa_s && wpa_s->global->p2p) {
9504 struct p2p_data *p2p = wpa_s->global->p2p;
9516 if (wpa_s->global->p2p == NULL ||
9522 if (!p2p_supported_freq(wpa_s->global->p2p, freq)) {
9539 buf = p2p_build_probe_resp_template(p2p, freq);