diff --git a/node/UdpSocket.cpp b/node/UdpSocket.cpp index 60884a53d..1f6990276 100644 --- a/node/UdpSocket.cpp +++ b/node/UdpSocket.cpp @@ -64,33 +64,20 @@ UdpSocket::~UdpSocket() } bool UdpSocket::send(const InetAddress &to,const void *msg,unsigned int msglen) -{ - return sendWithHopLimit(to,msg,msglen,0); -} - -bool UdpSocket::sendWithHopLimit(const InetAddress &to,const void *msg,unsigned int msglen,int hopLimit) { #ifdef ZT_BREAK_UDP return true; #else - if (hopLimit <= 0) - hopLimit = 255; if (to.isV6()) { #ifdef __WINDOWS__ - DWORD hltmp = (DWORD)hopLimit; - setsockopt(_sock,IPPROTO_IPV6,IPV6_UNICAST_HOPS,(const char *)&hltmp,sizeof(hltmp)); return ((int)sendto(_sock,(const char *)msg,msglen,0,to.saddr(),to.saddrLen()) == (int)msglen); #else - setsockopt(_sock,IPPROTO_IPV6,IPV6_UNICAST_HOPS,&hopLimit,sizeof(hopLimit)); return ((int)sendto(_sock,msg,msglen,0,to.saddr(),to.saddrLen()) == (int)msglen); #endif } else { #ifdef __WINDOWS__ - DWORD hltmp = (DWORD)hopLimit; - setsockopt(_sock,IPPROTO_IP,IP_TTL,(const char *)&hltmp,sizeof(hltmp)); return ((int)sendto(_sock,(const char *)msg,msglen,0,to.saddr(),to.saddrLen()) == (int)msglen); #else - setsockopt(_sock,IPPROTO_IP,IP_TTL,&hopLimit,sizeof(hopLimit)); return ((int)sendto(_sock,msg,msglen,0,to.saddr(),to.saddrLen()) == (int)msglen); #endif } diff --git a/node/UdpSocket.hpp b/node/UdpSocket.hpp index 9566b9ca5..7673b0136 100644 --- a/node/UdpSocket.hpp +++ b/node/UdpSocket.hpp @@ -46,17 +46,6 @@ public: virtual ~UdpSocket(); virtual bool send(const InetAddress &to,const void *msg,unsigned int msglen); - /** - * Send UDP packet with IP max hops set (<= 0 for default/infinite) - * - * @param to Destination address - * @param msg Message data - * @param msglen Message length - * @param hopLimit IP TTL / max hops - * @return True if packet appears sent - */ - bool sendWithHopLimit(const InetAddress &to,const void *msg,unsigned int msglen,int hopLimit); - protected: #ifdef __WINDOWS__ UdpSocket(Type t,SOCKET s) :