From 8aebb0e471f2e89e146713ebf9f3e1cbb58e8f52 Mon Sep 17 00:00:00 2001 From: Jithu Jance Date: Sun, 22 Jan 2012 17:20:53 +0200 Subject: [PATCH] P2P: Notify upper framework on stopping the p2p_find(SEARCH) This patch notifies the upper framework that an on-going discovery has been stopped. This is useful in cases where a p2p_find with a timeout value initiated by the upper framework has been finished or when the framework initiated "p2p_find" is stopped by a "p2p_connect". Signed-hostap: Jithu Jance --- src/common/wpa_ctrl.h | 1 + src/p2p/p2p.c | 3 +++ 2 files changed, 4 insertions(+) diff --git a/src/common/wpa_ctrl.h b/src/common/wpa_ctrl.h index 6cd9de5d1..d13ba0293 100644 --- a/src/common/wpa_ctrl.h +++ b/src/common/wpa_ctrl.h @@ -128,6 +128,7 @@ extern "C" { #define P2P_EVENT_SERV_DISC_RESP "P2P-SERV-DISC-RESP " #define P2P_EVENT_INVITATION_RECEIVED "P2P-INVITATION-RECEIVED " #define P2P_EVENT_INVITATION_RESULT "P2P-INVITATION-RESULT " +#define P2P_EVENT_FIND_STOPPED "P2P-FIND-STOPPED " #define INTERWORKING_AP "INTERWORKING-AP " #define INTERWORKING_NO_MATCH "INTERWORKING-NO-MATCH " diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c index e61e1336f..2fcac0ee6 100644 --- a/src/p2p/p2p.c +++ b/src/p2p/p2p.c @@ -18,6 +18,7 @@ #include "eloop.h" #include "common/ieee802_11_defs.h" #include "common/ieee802_11_common.h" +#include "common/wpa_ctrl.h" #include "wps/wps_i.h" #include "p2p_i.h" #include "p2p.h" @@ -994,6 +995,8 @@ void p2p_stop_find_for_freq(struct p2p_data *p2p, int freq) wpa_msg(p2p->cfg->msg_ctx, MSG_DEBUG, "P2P: Stopping find"); eloop_cancel_timeout(p2p_find_timeout, p2p, NULL); p2p_clear_timeout(p2p); + if (p2p->state == P2P_SEARCH) + wpa_msg(p2p->cfg->msg_ctx, MSG_INFO, P2P_EVENT_FIND_STOPPED); p2p_set_state(p2p, P2P_IDLE); p2p_free_req_dev_types(p2p); p2p->start_after_scan = P2P_AFTER_SCAN_NOTHING;