Browse Source

Added preprocessor check for __APPLE__ as an attempted fix for ticket #600

pull/1/head
Joseph Henry 7 years ago
parent
commit
c6ae81fac7
  1. 2
      osdep/Binder.hpp
  2. 2
      service/OneService.cpp

2
osdep/Binder.hpp

@ -373,7 +373,7 @@ public:
tcps = phy.tcpListen(reinterpret_cast<const struct sockaddr *>(&(ii->first)),(void *)0);
if ((udps)&&(tcps)) {
#ifdef __LINUX__
// Bind Linux sockets to their device so routes tha we manage do not override physical routes (wish all platforms had this!)
// Bind Linux sockets to their device so routes that we manage do not override physical routes (wish all platforms had this!)
if (ii->second.length() > 0) {
char tmp[256];
Utils::scopy(tmp,sizeof(tmp),ii->second.c_str());

2
service/OneService.cpp

@ -1801,12 +1801,14 @@ public:
bool haveRoute = false;
// Ignore routes implied by local managed IPs since adding the IP adds the route
#ifndef __APPLE__
for(std::vector<InetAddress>::iterator ip(n.managedIps.begin());ip!=n.managedIps.end();++ip) {
if ((target->netmaskBits() == ip->netmaskBits())&&(target->containsAddress(*ip))) {
haveRoute = true;
break;
}
}
#endif
if (haveRoute)
continue;
#ifndef ZT_SDK

Loading…
Cancel
Save