Parcourir la source

P2P: Fix PD retries on delay in off channel transmission

Commit 488f4a7108e021be97fc1841fff9042d2b7d737f configures a timer
before p2p_send_action(). This may result in the timer getting fired
earlier to the off channel transmission of the frame and thus another PD
request being retransmitted. This shall lead to the new PD request with
an incremented dialog token being transmitted. For the cases where the
later PD request might not be transmitted as the host driver is busy
transmitting the earlier frame, the received PD response could be
dropped for the dialog token mismatch. Remove the timer configuration to
avoid this behavior.

Signed-hostap: Sunil Dutt Undekari <duttus@codeaurora.org>
intended-for: hostap-1
Sunil Dutt il y a 12 ans
Parent
commit
1af1c9ceb6
1 fichiers modifiés avec 0 ajouts et 1 suppressions
  1. 0 1
      src/p2p/p2p_pd.c

+ 0 - 1
src/p2p/p2p_pd.c

@@ -347,7 +347,6 @@ int p2p_send_prov_disc_req(struct p2p_data *p2p, struct p2p_device *dev,
 	if (p2p->state != P2P_IDLE)
 	if (p2p->state != P2P_IDLE)
 		p2p_stop_listen_for_freq(p2p, freq);
 		p2p_stop_listen_for_freq(p2p, freq);
 	p2p->pending_action_state = P2P_PENDING_PD;
 	p2p->pending_action_state = P2P_PENDING_PD;
-	p2p_set_timeout(p2p, 0, 300000);
 	if (p2p_send_action(p2p, freq, dev->info.p2p_device_addr,
 	if (p2p_send_action(p2p, freq, dev->info.p2p_device_addr,
 			    p2p->cfg->dev_addr, 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), 200) < 0) {