GitHub CI: update list of container images
[tinc] / src / route.c
index 79832dc..6f1ffd4 100644 (file)
@@ -22,6 +22,7 @@
 
 #include "connection.h"
 #include "control_common.h"
+#include "crypto.h"
 #include "ethernet.h"
 #include "ipv4.h"
 #include "ipv6.h"
@@ -31,6 +32,7 @@
 #include "protocol.h"
 #include "route.h"
 #include "subnet.h"
+#include "utils.h"
 
 rmode_t routing_mode = RMODE_ROUTER;
 fmode_t forwarding_mode = FMODE_INTERNAL;
@@ -162,7 +164,7 @@ static void route_ipv4_unreachable(node_t *source, vpn_packet_t *packet, length_
                                }
                        }
 
-                       close(sockfd);
+                       closesocket(sockfd);
                }
        }
 
@@ -267,7 +269,7 @@ static void route_ipv6_unreachable(node_t *source, vpn_packet_t *packet, length_
                                }
                        }
 
-                       close(sockfd);
+                       closesocket(sockfd);
                }
        }
 
@@ -515,7 +517,7 @@ static void age_subnets(void *data) {
 
        if(left)
                timeout_set(&age_subnets_timeout, &(struct timeval) {
-               10, rand() % 100000
+               10, jitter()
        });
 }
 
@@ -545,7 +547,7 @@ static void learn_mac(mac_t *address) {
                        }
 
                timeout_add(&age_subnets_timeout, age_subnets, NULL, &(struct timeval) {
-                       10, rand() % 100000
+                       10, jitter()
                });
        } else {
                if(subnet->expires) {
@@ -583,7 +585,7 @@ static void fragment_ipv4_packet(node_t *dest, vpn_packet_t *packet, length_t et
        todo = ntohs(ip.ip_len) - ip_size;
 
        if(ether_size + ip_size + todo != packet->len) {
-               logger(DEBUG_TRAFFIC, LOG_WARNING, "Length of packet (%d) doesn't match length in IPv4 header (%zu)", packet->len, ether_size + ip_size + todo);
+               logger(DEBUG_TRAFFIC, LOG_WARNING, "Length of packet (%d) doesn't match length in IPv4 header (%lu)", packet->len, (unsigned long)(ether_size + ip_size + todo));
                return;
        }