If no post-provision discovery operations, it should continue listening next request or this results in the p2p_find operation getting stopped (stuck in SEARCH state) unexpectedly. Signed-off-by: Jimmy Chen <jimmycmchen@xxxxxxxxxx> --- src/p2p/p2p.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c index a08ba0268..24e429c59 100644 --- a/src/p2p/p2p.c +++ b/src/p2p/p2p.c @@ -3451,12 +3451,18 @@ static void p2p_prov_disc_resp_cb(struct p2p_data *p2p, int success) p2p->pending_action_state = P2P_NO_PENDING_ACTION; - if (!success) + if (!success) { + if (p2p->state == P2P_SEARCH) + p2p_continue_find(p2p); return; + } if (!p2p->cfg->prov_disc_resp_cb || - p2p->cfg->prov_disc_resp_cb(p2p->cfg->cb_ctx) < 1) + p2p->cfg->prov_disc_resp_cb(p2p->cfg->cb_ctx) < 1) { + if (p2p->state == P2P_SEARCH) + p2p_continue_find(p2p); return; + } p2p_dbg(p2p, "Post-Provision Discovery operations started - do not try to continue other P2P operations"); -- 2.23.0.700.g56cf767bdb-goog _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap