diff options
| author | Joseph Henry <[email protected]> | 2017-03-28 18:56:38 -0700 |
|---|---|---|
| committer | Joseph Henry <[email protected]> | 2017-03-28 18:56:38 -0700 |
| commit | bd3b07e00a90502d220cb83e2d864e279b3c4b60 (patch) | |
| tree | d810f60cbc94077b34c97a6979dc3f6f2dae19e2 /zto/node/OutboundMulticast.cpp | |
| parent | b1e83a236e13dfef446e5e296442a2651af7549d (diff) | |
Updated core for tptr support0.9.0
Diffstat (limited to 'zto/node/OutboundMulticast.cpp')
| -rw-r--r-- | zto/node/OutboundMulticast.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/zto/node/OutboundMulticast.cpp b/zto/node/OutboundMulticast.cpp index 36dc41f..285bfa5 100644 --- a/zto/node/OutboundMulticast.cpp +++ b/zto/node/OutboundMulticast.cpp @@ -85,16 +85,18 @@ void OutboundMulticast::init( memcpy(_frameData,payload,_frameLen); } -void OutboundMulticast::sendOnly(const RuntimeEnvironment *RR,const Address &toAddr) +void OutboundMulticast::sendOnly(const RuntimeEnvironment *RR,void *tPtr,const Address &toAddr) { const SharedPtr<Network> nw(RR->node->network(_nwid)); const Address toAddr2(toAddr); - if ((nw)&&(nw->filterOutgoingPacket(true,RR->identity.address(),toAddr2,_macSrc,_macDest,_frameData,_frameLen,_etherType,0))) { + if ((nw)&&(nw->filterOutgoingPacket(tPtr,true,RR->identity.address(),toAddr2,_macSrc,_macDest,_frameData,_frameLen,_etherType,0))) { //TRACE(">>MC %.16llx -> %s",(unsigned long long)this,toAddr.toString().c_str()); _packet.newInitializationVector(); _packet.setDestination(toAddr2); RR->node->expectReplyTo(_packet.packetId()); - RR->sw->send(_packet,true); + + Packet tmp(_packet); // make a copy of packet so as not to garble the original -- GitHub issue #461 + RR->sw->send(tPtr,tmp,true); } } |
