All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.