From d7e7ad4f88ed8f5967568a9d5cec0716d1ae6265 Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Wed, 11 Jan 2017 17:46:52 -0800 Subject: [PATCH] Can't send a user message to self. --- node/Node.cpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/node/Node.cpp b/node/Node.cpp index 32d41305f..0d0750caf 100644 --- a/node/Node.cpp +++ b/node/Node.cpp @@ -476,15 +476,16 @@ void Node::clearLocalInterfaceAddresses() int Node::sendUserMessage(uint64_t dest,uint64_t typeId,const void *data,unsigned int len) { try { - Packet outp(Address(dest),RR->identity.address(),Packet::VERB_USER_MESSAGE); - outp.append(typeId); - outp.append(data,len); - outp.compress(); - RR->sw->send(outp,true); - return 1; - } catch ( ... ) { - return 0; - } + if (RR->identity.address().toInt() != dest) { + Packet outp(Address(dest),RR->identity.address(),Packet::VERB_USER_MESSAGE); + outp.append(typeId); + outp.append(data,len); + outp.compress(); + RR->sw->send(outp,true); + return 1; + } + } catch ( ... ) {} + return 0; } void Node::setRole(uint64_t ztAddress,ZT_PeerRole role)