Pass index into listen_socket[] to handle_incoming_vpn_data().
authorGuus Sliepen <guus@tinc-vpn.org>
Wed, 22 Feb 2012 13:37:56 +0000 (14:37 +0100)
committerGuus Sliepen <guus@tinc-vpn.org>
Wed, 22 Feb 2012 13:37:56 +0000 (14:37 +0100)
src/net.c
src/net_packet.c

index fc9ec574987a97f81d42f757e19648bd800299b0..759dbe7b59b820a8b447d421ed7828b7207716b9 100644 (file)
--- a/src/net.c
+++ b/src/net.c
@@ -343,7 +343,7 @@ static void check_network_activity(fd_set * readset, fd_set * writeset) {
 
        for(i = 0; i < listen_sockets; i++) {
                if(FD_ISSET(listen_socket[i].udp, readset))
 
        for(i = 0; i < listen_sockets; i++) {
                if(FD_ISSET(listen_socket[i].udp, readset))
-                       handle_incoming_vpn_data(listen_socket[i].udp);
+                       handle_incoming_vpn_data(i);
 
                if(FD_ISSET(listen_socket[i].tcp, readset))
                        handle_new_meta_connection(listen_socket[i].tcp);
 
                if(FD_ISSET(listen_socket[i].tcp, readset))
                        handle_new_meta_connection(listen_socket[i].tcp);
index 360f318e1ffacf7c5dd06a234b2a856e9f047e94..46fc875bf53c6869f564037339e8e76803035063 100644 (file)
@@ -610,7 +610,7 @@ void handle_incoming_vpn_data(int sock) {
        socklen_t fromlen = sizeof(from);
        node_t *n;
 
        socklen_t fromlen = sizeof(from);
        node_t *n;
 
-       pkt.len = recvfrom(sock, (char *) &pkt.seqno, MAXSIZE, 0, &from.sa, &fromlen);
+       pkt.len = recvfrom(listen_socket[sock].udp, (char *) &pkt.seqno, MAXSIZE, 0, &from.sa, &fromlen);
 
        if(pkt.len < 0) {
                if(!sockwouldblock(sockerrno))
 
        if(pkt.len < 0) {
                if(!sockwouldblock(sockerrno))