X-Git-Url: https://www.tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=src%2Froute.c;h=42ae1fdf8ea196032ae9fe6016243bd0aed7a10f;hp=18d16c0a4fba969782b22228d6a0acdc90b338c0;hb=e8b11b1cca11f7f50542a7b34f4251f43447db0d;hpb=7926a156e5b118d06295228e57de0cc9de0433b4 diff --git a/src/route.c b/src/route.c index 18d16c0a..42ae1fdf 100644 --- a/src/route.c +++ b/src/route.c @@ -22,22 +22,6 @@ #include "system.h" -#ifdef HAVE_NET_ETHERNET_H -#include -#endif -#ifdef HAVE_NET_IF_ARP_H -#include -#endif -#ifdef HAVE_NETINET_IP_ICMP_H -#include -#endif -#ifdef HAVE_NETINET_ICMP6_H -#include -#endif -#ifdef HAVE_NETINET_IF_ETHER_H -#include -#endif - #include "avl_tree.h" #include "connection.h" #include "ethernet.h" @@ -362,7 +346,7 @@ static __inline__ void route_ipv4_unicast(node_t *source, vpn_packet_t *packet) via = (subnet->owner->via == myself) ? subnet->owner->nexthop : subnet->owner->via; - if(packet->len > via->mtu && via != myself) { + if(via && packet->len > via->mtu && via != myself) { ifdebug(TRAFFIC) logger(LOG_INFO, _("Packet for %s (%s) length %d larger than MTU %d"), subnet->owner->name, subnet->owner->hostname, packet->len, via->mtu); if(packet->data[20] & 0x40) { packet->len = via->mtu; @@ -501,7 +485,7 @@ static __inline__ void route_ipv6_unicast(node_t *source, vpn_packet_t *packet) via = (subnet->owner->via == myself) ? subnet->owner->nexthop : subnet->owner->via; - if(packet->len > via->mtu && via != myself) { + if(via && packet->len > via->mtu && via != myself) { ifdebug(TRAFFIC) logger(LOG_INFO, _("Packet for %s (%s) length %d larger than MTU %d"), subnet->owner->name, subnet->owner->hostname, packet->len, via->mtu); packet->len = via->mtu; route_ipv6_unreachable(source, packet, ICMP6_PACKET_TOO_BIG, 0);