Nodes should only be in the node_udp_tree if they are reachable.
[tinc] / src / graph.c
index a3fe0ce..f6ce90d 100644 (file)
@@ -258,9 +258,11 @@ void sssp_bfs(void)
                        if(n->status.reachable) {
                                ifdebug(TRAFFIC) logger(LOG_DEBUG, _("Node %s (%s) became reachable"),
                                           n->name, n->hostname);
+                               avl_insert(node_udp_tree, n);
                        } else {
                                ifdebug(TRAFFIC) logger(LOG_DEBUG, _("Node %s (%s) became unreachable"),
                                           n->name, n->hostname);
+                               avl_delete(node_udp_tree, n);
                        }
 
                        n->status.validkey = false;