From 6e76141ffb9eba9a6e00f3b7c3140d6020d776bc Mon Sep 17 00:00:00 2001
From: Jakob Olsson <jakob.olsson@iopsys.eu>
Date: Fri, 19 Feb 2021 14:42:02 +0100
Subject: [PATCH] agent: default ACS to 120s, 20s if active

---
 src/core/agent.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/core/agent.c b/src/core/agent.c
index e6c77d820..d6201c67b 100644
--- a/src/core/agent.c
+++ b/src/core/agent.c
@@ -3510,7 +3510,7 @@ static void agent_dispatch_autoconfig(struct uloop_timeout *t)
 	struct agent *a = container_of(t, struct agent, autocfg_dispatcher);
 	int diff;
 	struct netif_bk *bk;
-	int i;
+	int i, timeout = 120;
 
 	trace("|%s:%d| Triggering AP-Autoconfig Search\n", __func__, __LINE__);
 
@@ -3536,6 +3536,10 @@ static void agent_dispatch_autoconfig(struct uloop_timeout *t)
 		struct cmdu_cstruct *cmdu;
 		struct wifi_radio_element *radio = &a->radios[i];
 		int mid;
+
+		if (radio->state == ACS_ACTIVE)
+			timeout = 20;
+
 #if 0
 		if (/* radio->onboarded || */radio->configured) {
 			dbg("radio %s has been configured, don't trigger search\n",
@@ -3556,7 +3560,7 @@ static void agent_dispatch_autoconfig(struct uloop_timeout *t)
 		map_free_cmdu(cmdu);
 	}
 
-	uloop_timeout_set(&a->autocfg_dispatcher, 15 * 1000);
+	uloop_timeout_set(&a->autocfg_dispatcher, timeout * 1000);
 }
 
 static struct msg *agent_msg_enqueue(struct agent *a, int id,
-- 
GitLab