From patchwork Mon Oct 31 13:33:06 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: If P2P device expires while GO nego is in progress, indicate GO Nego failure. Date: Mon, 31 Oct 2011 03:33:06 -0000 From: Jithu Jance X-Patchwork-Id: 122804 Message-Id: <6C370B347C3FE8438C9692873287D2E119560C6AFF@SJEXCHCCR01.corp.ad.broadcom.com> To: "hostap@lists.shmoo.com" If P2P device expires while a GO negotiation is in progress, currently p2p->go_neg_peer is cleared without indicating GO Nego failure. This will result in pending group interfaces to be left over. This patch will indicate go nego failure and will remove any pending group interfaces. Signed-off-by: Jithu Jance --- src/p2p/p2p.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c index 404b2cd..5a7aee2 100644 --- a/src/p2p/p2p.c +++ b/src/p2p/p2p.c @@ -625,8 +625,12 @@ static void p2p_device_free(struct p2p_data *p2p, struct p2p_device *dev) { int i; - if (p2p->go_neg_peer == dev) + if (p2p->go_neg_peer == dev) { + /* If GO Negotiation is in progress, report that + * it has failed. */ + p2p_go_neg_failed(p2p, dev, -1); p2p->go_neg_peer = NULL; + } if (p2p->invite_peer == dev) p2p->invite_peer = NULL; if (p2p->sd_peer == dev)