diff --git a/osdep/LinuxNetLink.cpp b/osdep/LinuxNetLink.cpp index 02c38c09a..5db7afd70 100644 --- a/osdep/LinuxNetLink.cpp +++ b/osdep/LinuxNetLink.cpp @@ -764,6 +764,7 @@ void LinuxNetLink::addRoute(const InetAddress& target, const InetAddress& via, c memcpy(RTA_DATA(rtap), &((struct sockaddr_in6*)&src)->sin6_addr, sizeof(struct in6_addr)); } req.rt.rtm_src_len = src.netmaskBits(); + rtl += rtap->rta_len; } if (ifaceName != NULL) { @@ -883,6 +884,7 @@ void LinuxNetLink::delRoute(const InetAddress& target, const InetAddress& via, c memcpy(RTA_DATA(rtap), &((struct sockaddr_in6*)&src)->sin6_addr, sizeof(struct in6_addr)); } req.rt.rtm_src_len = src.netmaskBits(); + rtl += rtap->rta_len; } if (ifaceName != NULL) {