Use Dijkstra's algorithm. Based on patches from Max Rijevskiy.
[tinc] / src / node.h
index 4186d06..da5081b 100644 (file)
@@ -60,6 +60,7 @@ typedef struct node_t {
 
        list_t *queue;                          /* Queue for packets awaiting to be encrypted */
 
+       int distance;
        struct node_t *nexthop;                 /* nearest node from us to him */
        struct node_t *via;                     /* next hop for UDP packets */
 
@@ -92,6 +93,6 @@ extern void node_add(node_t *);
 extern void node_del(node_t *);
 extern node_t *lookup_node(char *);
 extern node_t *lookup_node_udp(const sockaddr_t *);
-extern void dump_nodes(void);
+extern int dump_nodes(struct evbuffer *);
 
 #endif                                                 /* __TINC_NODE_H__ */