From 30404650b28bf72d0b05b55393f2dd492434f9f3 Mon Sep 17 00:00:00 2001 From: Guus Sliepen Date: Sat, 17 Nov 2012 22:14:52 +0100 Subject: [PATCH] Choose a suitable socket when updating a node's UDP address. --- src/node.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/node.c b/src/node.c index e67b9b9..5dc3119 100644 --- a/src/node.c +++ b/src/node.c @@ -129,6 +129,13 @@ void update_node_udp(node_t *n, const sockaddr_t *sa) { if(sa) { n->address = *sa; + n->sock = 0; + for(int i = 0; i < listen_sockets; i++) { + if(listen_socket[i].sa.sa.sa_family == sa->sa.sa_family) { + n->sock = i; + break; + } + } hash_insert(node_udp_cache, sa, n); free(n->hostname); n->hostname = sockaddr2hostname(&n->address); -- 2.25.1