aboutsummaryrefslogtreecommitdiffstats
path: root/src/p2p/p2p_go_neg.c
diff options
context:
space:
mode:
authorFabien Marotte <fabienx.marotte@linux.intel.com>2010-12-28 11:48:58 +0200
committerJouni Malinen <j@w1.fi>2010-12-28 11:48:58 +0200
commit9dac8c3eaf8f89ead16dfe63f086cf5be7117a7f (patch)
tree010e8cef0e9af905a1ae07b87b892f8640fe119c /src/p2p/p2p_go_neg.c
parentcc5e390d28ec9ee1ca94fac94629d0529d07dd60 (diff)
downloadexternal_wpa_supplicant_8_ti-9dac8c3eaf8f89ead16dfe63f086cf5be7117a7f.zip
external_wpa_supplicant_8_ti-9dac8c3eaf8f89ead16dfe63f086cf5be7117a7f.tar.gz
external_wpa_supplicant_8_ti-9dac8c3eaf8f89ead16dfe63f086cf5be7117a7f.tar.bz2
P2P: Limit the retransmission of GO Negotiation request to 120
If the peer you want to connect to is no longer available (does not acknowledge frames) when wpa_supplicant sends GO Negotition Request frames, retransmission of this frame is done until the associated p2p_device structure is removed on timeout. In that case, no signal is emitted to inform the GO Negotiation has failed. When sending an Invitation Request frame, the same retransmission mechanism is in place but limit the transmission to 100 and hitting the limit generates an event. This patch adds the same mechanism as the one in place for Invitation Request, but with limit of 120 to match the existing wait_count for for GO Negotiation.
Diffstat (limited to 'src/p2p/p2p_go_neg.c')
-rw-r--r--src/p2p/p2p_go_neg.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/p2p/p2p_go_neg.c b/src/p2p/p2p_go_neg.c
index 4db0f8b..d5e3f1c 100644
--- a/src/p2p/p2p_go_neg.c
+++ b/src/p2p/p2p_go_neg.c
@@ -209,6 +209,7 @@ int p2p_connect_send(struct p2p_data *p2p, struct p2p_device *dev)
p2p->pending_action_state = P2P_PENDING_GO_NEG_REQUEST;
p2p->go_neg_peer = dev;
dev->flags |= P2P_DEV_WAIT_GO_NEG_RESPONSE;
+ dev->connect_reqs++;
if (p2p_send_action(p2p, freq, dev->p2p_device_addr,
p2p->cfg->dev_addr, dev->p2p_device_addr,
wpabuf_head(req), wpabuf_len(req), 200) < 0) {