Replace pointers to global splay trees with structs.
[tinc] / src / net_packet.c
index dab74e5..290f743 100644 (file)
@@ -1623,7 +1623,7 @@ void broadcast_packet(const node_t *from, vpn_packet_t *packet) {
        // This guarantees all nodes receive the broadcast packet, and
        // usually distributes the sending of broadcast packets over all nodes.
        case BMODE_MST:
-               for list_each(connection_t, c, connection_list)
+               for list_each(connection_t, c, &connection_list)
                        if(c->edge && c->status.mst && c != from->nexthop->connection) {
                                send_packet(c->node, packet);
                        }
@@ -1638,7 +1638,7 @@ void broadcast_packet(const node_t *from, vpn_packet_t *packet) {
                        break;
                }
 
-               for splay_each(node_t, n, node_tree)
+               for splay_each(node_t, n, &node_tree)
                        if(n->status.reachable && n != myself && ((n->via == myself && n->nexthop == n) || n->via == n)) {
                                send_packet(n, packet);
                        }
@@ -1661,7 +1661,7 @@ static node_t *try_harder(const sockaddr_t *from, const vpn_packet_t *pkt) {
        bool hard = false;
        static time_t last_hard_try = 0;
 
-       for splay_each(node_t, n, node_tree) {
+       for splay_each(node_t, n, &node_tree) {
                if(!n->status.reachable || n == myself) {
                        continue;
                }