diff options
Diffstat (limited to 'service')
-rw-r--r-- | service/OneService.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/service/OneService.cpp b/service/OneService.cpp index c4d29c52..2e9c530d 100644 --- a/service/OneService.cpp +++ b/service/OneService.cpp @@ -1609,6 +1609,7 @@ public: bool haveRoute = false; // Ignore routes implied by local managed IPs since adding the IP adds the route + // Commented out to fix ticket #600 (disappearing routes on macOS). Remove this block when we're sure there's no side effects /* for(std::vector<InetAddress>::iterator ip(n.managedIps.begin());ip!=n.managedIps.end();++ip) { if ((target->netmaskBits() == ip->netmaskBits())&&(target->containsAddress(*ip))) { @@ -2278,6 +2279,8 @@ public: return 0; } } + } + if (gbl) { for(std::vector<InetAddress>::const_iterator a(gbl->begin());a!=gbl->end();++a) { if (a->containsAddress(*reinterpret_cast<const InetAddress *>(remoteAddr))) return 0; |