summaryrefslogtreecommitdiff
path: root/src/ipcpd/unicast
diff options
context:
space:
mode:
authorDimitri Staessens <dimitri@ouroboros.rocks>2026-08-16 19:46:34 +0000
committerSander Vrijders <sander@ouroboros.rocks>2026-08-31 08:31:46 +0200
commitf921e50952334d99b6c25ee8df09e7fb1523e92f (patch)
treeaa25e0c1745ada1300f5c214198399d12706ec61 /src/ipcpd/unicast
parent016c3c438e9b066bb45d4934ad039a49bde7014d (diff)
downloadouroboros-f921e50952334d99b6c25ee8df09e7fb1523e92f.tar.gz
ouroboros-f921e50952334d99b6c25ee8df09e7fb1523e92f.zip
lib: Update FRCT loss recovery
Some more stability fixes in FRCT. Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks> Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
Diffstat (limited to 'src/ipcpd/unicast')
-rw-r--r--src/ipcpd/unicast/fa.c4
-rw-r--r--src/ipcpd/unicast/fa.h2
-rw-r--r--src/ipcpd/unicast/main.c2
3 files changed, 5 insertions, 3 deletions
diff --git a/src/ipcpd/unicast/fa.c b/src/ipcpd/unicast/fa.c
index 744eb316..1c939fab 100644
--- a/src/ipcpd/unicast/fa.c
+++ b/src/ipcpd/unicast/fa.c
@@ -891,11 +891,13 @@ static void * fa_handle_packet(void * o)
return (void *) 0;
}
-int fa_init(void)
+int fa_init(uint16_t max_rtt)
{
pthread_condattr_t cattr;
size_t i;
+ ipcp_flow_set_max_rtt(max_rtt);
+
if (pthread_rwlock_init(&fa.flows_lock, NULL) != 0)
goto fail_rwlock;
diff --git a/src/ipcpd/unicast/fa.h b/src/ipcpd/unicast/fa.h
index 1d0012b0..504d67d3 100644
--- a/src/ipcpd/unicast/fa.h
+++ b/src/ipcpd/unicast/fa.h
@@ -26,7 +26,7 @@
#include <ouroboros/qos.h>
#include <ouroboros/utils.h>
-int fa_init(void);
+int fa_init(uint16_t max_rtt);
void fa_fini(void);
diff --git a/src/ipcpd/unicast/main.c b/src/ipcpd/unicast/main.c
index 3ee53401..320ce165 100644
--- a/src/ipcpd/unicast/main.c
+++ b/src/ipcpd/unicast/main.c
@@ -85,7 +85,7 @@ static int initialize_components(struct ipcp_config * conf)
goto fail_dir;
}
- if (fa_init()) {
+ if (fa_init(conf->unicast.dt.max_rtt)) {
log_err("Failed to initialize flow allocator component.");
goto fail_fa;
}