summaryrefslogtreecommitdiff
path: root/src/irmd/main.c
diff options
context:
space:
mode:
authorDimitri Staessens <dimitri@ouroboros.rocks>2025-09-20 12:37:06 +0200
committerSander Vrijders <sander@ouroboros.rocks>2025-09-24 08:06:47 +0200
commit181739aa4571b8707160b946f1e1e3a92a3c3e3b (patch)
treeeef749949d5b72ebe09d79e457870c24f05c80f8 /src/irmd/main.c
parent20d1f4156394e76c7d9b08013dd04ce6fbc6f949 (diff)
downloadouroboros-181739aa4571b8707160b946f1e1e3a92a3c3e3b.tar.gz
ouroboros-181739aa4571b8707160b946f1e1e3a92a3c3e3b.zip
irmd: Fix the flow_join operationtestingbe
This fixes a regression in the code path for joining a broadcast Layer. It deprecates the qos parameter on flow_join, as the QoS is implied by the broadcast Layer itself. Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks> Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
Diffstat (limited to 'src/irmd/main.c')
-rw-r--r--src/irmd/main.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/irmd/main.c b/src/irmd/main.c
index 834a7a8c..daaf4129 100644
--- a/src/irmd/main.c
+++ b/src/irmd/main.c
@@ -1250,6 +1250,8 @@ static int flow_join(struct flow_info * flow,
goto fail_ipcp;
}
+ flow->n_1_pid = ipcp.pid;
+
hash.len = hash_len((enum hash_algo) layer.dir_hash_algo);
hash.data = malloc(hash.len);
if (hash.data == NULL) {
@@ -1258,6 +1260,8 @@ static int flow_join(struct flow_info * flow,
goto fail_ipcp;
}
+ str_hash((enum hash_algo) layer.dir_hash_algo, hash.data, dst);
+
reg_prepare_flow_alloc(flow);
if (ipcp_flow_join(flow, hash)) {
@@ -1889,7 +1893,7 @@ static irm_msg_t * do_command_msg(irm_msg_t * msg)
abstime = abstime == NULL ? &max : abstime;
res = flow_join(&flow, msg->dst, abstime);
if (res == 0)
- ret_msg->flow_info = flow_info_s_to_msg(&flow);
+ ret_msg->flow_info = flow_info_s_to_msg(&flow);
break;
case IRM_MSG_CODE__IRM_FLOW_DEALLOC:
flow = flow_info_msg_to_s(msg->flow_info);