Wireless Daemon for Linux
 help / color / mirror / Atom feed
* [PATCH 1/3] netdev: better handle associate timeouts with auth_protos
@ 2021-03-29 20:17 James Prestwood
  2021-03-29 20:17 ` [PATCH 2/3] sae: add counter for associate retries James Prestwood
  2021-03-29 20:17 ` [PATCH 3/3] netdev: remove unneeded goto/return code James Prestwood
  0 siblings, 2 replies; 3+ messages in thread
From: James Prestwood @ 2021-03-29 20:17 UTC (permalink / raw)
  To: iwd

[-- Attachment #1: Type: text/plain, Size: 1218 bytes --]

Any auth proto which did not implement the assoc_timeout handler
could end up getting 'stuck' forever if there was an associate
timeout. This is because in the event of an associate timeout IWD
only sets a few flags and relies on the connect event to actually
handle the failure. The problem is a connect event never comes
when using CMD_AUTH/ASSOC directly.

To fix this we can explicitly fail the connection if the auth
proto has not implemented assoc_timeout or if it returns false.
---
 src/netdev.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/netdev.c b/src/netdev.c
index 8d3f4a08..d5bad57e 100644
--- a/src/netdev.c
+++ b/src/netdev.c
@@ -2339,6 +2339,16 @@ static void netdev_associate_event(struct l_genl_msg *msg,
 	return;
 
 assoc_failed:
+	/*
+	 * There will be no connect event when using Auth/Assoc directly so
+	 * the failed connection must be explicitly initiated here.
+	 */
+	if (netdev->ap) {
+		netdev_connect_failed(netdev, NETDEV_RESULT_ASSOCIATION_FAILED,
+					status_code);
+		return;
+	}
+
 	netdev->result = NETDEV_RESULT_ASSOCIATION_FAILED;
 	netdev->last_code = status_code;
 	netdev->expect_connect_failure = true;
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-03-29 20:17 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-03-29 20:17 [PATCH 1/3] netdev: better handle associate timeouts with auth_protos James Prestwood
2021-03-29 20:17 ` [PATCH 2/3] sae: add counter for associate retries James Prestwood
2021-03-29 20:17 ` [PATCH 3/3] netdev: remove unneeded goto/return code James Prestwood

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox