]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
P2P: Increase GO Negotiation timeouts
authorJouni Malinen <jouni@qca.qualcomm.com>
Thu, 28 Feb 2013 20:15:46 +0000 (22:15 +0200)
committerJouni Malinen <j@w1.fi>
Thu, 28 Feb 2013 20:15:46 +0000 (22:15 +0200)
There may be environments in which large number of devices are operating
on the social channels. In such cases, it is possible for the Action
frame TX operation wait for quite long time before being able to get the
frame out. To avoid triggering GO Negotiation failures, increase the
timeouts for GO Neg Req (with TX ACK) and GO Neg Resp (with or without
TX ACK as long as status=0) to 500 ms.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>

src/p2p/p2p.c
src/p2p/p2p_go_neg.c

index c174c7488b14c99d2eab12ebb6fa271d42b15474..f608be01980f48000c32b81845753a390e1a7302 100644 (file)
@@ -2945,7 +2945,7 @@ static void p2p_go_neg_req_cb(struct p2p_data *p2p, int success)
         * channel.
         */
        p2p_set_state(p2p, P2P_CONNECT);
-       p2p_set_timeout(p2p, 0, success ? 200000 : 100000);
+       p2p_set_timeout(p2p, 0, success ? 500000 : 100000);
 }
 
 
@@ -2961,7 +2961,7 @@ static void p2p_go_neg_resp_cb(struct p2p_data *p2p, int success)
                return;
        }
        p2p_set_state(p2p, P2P_CONNECT);
-       p2p_set_timeout(p2p, 0, 250000);
+       p2p_set_timeout(p2p, 0, 500000);
 }
 
 
index 957e29f28c96ad137103cfe28a62b645caaf9889..394b3fbde81caed44619232f378674b4c8b85f6b 100644 (file)
@@ -230,7 +230,7 @@ int p2p_connect_send(struct p2p_data *p2p, struct p2p_device *dev)
        dev->connect_reqs++;
        if (p2p_send_action(p2p, freq, dev->info.p2p_device_addr,
                            p2p->cfg->dev_addr, dev->info.p2p_device_addr,
-                           wpabuf_head(req), wpabuf_len(req), 200) < 0) {
+                           wpabuf_head(req), wpabuf_len(req), 500) < 0) {
                wpa_msg(p2p->cfg->msg_ctx, MSG_DEBUG,
                        "P2P: Failed to send Action frame");
                /* Use P2P find to recover and retry */
@@ -773,7 +773,7 @@ fail:
                        P2P_PENDING_GO_NEG_RESPONSE_FAILURE;
        if (p2p_send_action(p2p, freq, sa, p2p->cfg->dev_addr,
                            p2p->cfg->dev_addr,
-                           wpabuf_head(resp), wpabuf_len(resp), 250) < 0) {
+                           wpabuf_head(resp), wpabuf_len(resp), 500) < 0) {
                wpa_msg(p2p->cfg->msg_ctx, MSG_DEBUG,
                        "P2P: Failed to send Action frame");
        }