X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fgraph.c;h=d54e5cd6a99de011bb64030ed648b9190deeb8b1;hb=55ef2f806f9840103bceb472564a711b22e73d58;hp=5a0aab0ba7bd04979198492ef7ab3854b251484c;hpb=7ea85043ac1fb2096baea44f6b0af27ac0d0b2cf;p=tinc diff --git a/src/graph.c b/src/graph.c index 5a0aab0b..d54e5cd6 100644 --- a/src/graph.c +++ b/src/graph.c @@ -378,48 +378,15 @@ void check_reachability() { free(envp[i]); subnet_update(n, NULL, n->status.reachable); - } - } -} - -/* Dump nodes and edges to a graphviz file. - - The file can be converted to an image with - dot -Tpng graph_filename -o image_filename.png -Gconcentrate=true -*/ - -int dump_graph(struct evbuffer *out) { - splay_node_t *node; - node_t *n; - edge_t *e; - if(evbuffer_add_printf(out, "digraph {\n") == -1) - return errno; - - /* dump all nodes first */ - for(node = node_tree->head; node; node = node->next) { - n = node->data; - if(evbuffer_add_printf(out, " %s [label = \"%s\"];\n", - n->name, n->name) == -1) - return errno; - } - - /* now dump all edges */ - for(node = edge_weight_tree->head; node; node = node->next) { - e = node->data; - if(evbuffer_add_printf(out, " %s -> %s;\n", - e->from->name, e->to->name) == -1) - return errno; + if(!n->status.reachable) + update_node_udp(n, NULL); + } } - - if(evbuffer_add_printf(out, "}\n") == -1) - return errno; - - return 0; } void graph(void) { - subnet_cache_flush(); + subnet_cache_flush(); sssp_dijkstra(); check_reachability(); mst_kruskal();