}
+void p2p_listen_failed(struct p2p_data *p2p, unsigned int freq)
+{
+ if (freq != p2p->pending_listen_freq) {
+ p2p_dbg(p2p,
+ "Unexpected listen failed callback for freq=%u (pending_listen_freq=%u)",
+ freq, p2p->pending_listen_freq);
+ return;
+ }
+
+ p2p_dbg(p2p, "Listen failed on freq=%u", freq);
+ p2p->pending_listen_freq = 0;
+}
+
+
static void p2p_timeout_connect(struct p2p_data *p2p)
{
p2p->cfg->send_action_done(p2p->cfg->cb_ctx);
*/
int p2p_listen_end(struct p2p_data *p2p, unsigned int freq);
+void p2p_listen_failed(struct p2p_data *p2p, unsigned int freq);
+
void p2p_deauth_notif(struct p2p_data *p2p, const u8 *bssid, u16 reason_code,
const u8 *ie, size_t ie_len);
if (wpa_drv_probe_req_report(wpa_s, 1) < 0) {
wpa_printf(MSG_DEBUG, "P2P: Failed to request the driver to "
"report received Probe Request frames");
+ p2p_listen_failed(wpa_s->global->p2p, lwork->freq);
wpas_p2p_listen_work_done(wpa_s);
return;
}
wpa_printf(MSG_DEBUG, "P2P: Failed to request the driver "
"to remain on channel (%u MHz) for Listen "
"state", lwork->freq);
+ p2p_listen_failed(wpa_s->global->p2p, lwork->freq);
wpas_p2p_listen_work_done(wpa_s);
wpa_s->pending_listen_freq = 0;
return;