diff options
Diffstat (limited to 'node')
-rw-r--r-- | node/OutboundMulticast.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/node/OutboundMulticast.cpp b/node/OutboundMulticast.cpp index f62046be..bda7ab00 100644 --- a/node/OutboundMulticast.cpp +++ b/node/OutboundMulticast.cpp @@ -102,8 +102,14 @@ void OutboundMulticast::init( void OutboundMulticast::sendOnly(const RuntimeEnvironment *RR,const Address &toAddr) { + SharedPtr<Network> network(RR->node->network(_nwid)); + + if (!network) + return; + if (!network->isAllowed(toAddr)) + return; + if (_haveCom) { - SharedPtr<Network> network(RR->node->network(_nwid)); if (network->peerNeedsOurMembershipCertificate(toAddr,RR->node->now())) { _packetWithCom.newInitializationVector(); _packetWithCom.setDestination(toAddr); @@ -112,6 +118,7 @@ void OutboundMulticast::sendOnly(const RuntimeEnvironment *RR,const Address &toA return; } } + //TRACE(">>MC %.16llx -> %s (without COM)",(unsigned long long)this,toAddr.toString().c_str()); _packetNoCom.newInitializationVector(); _packetNoCom.setDestination(toAddr); |