Tick event loop on data queuing

pull/1557/head
Jason Rhinelander 3 years ago
parent 895acc45ff
commit f9dc308f75

@ -1,4 +1,5 @@
#include <path/ihophandler.hpp>
#include <router/abstractrouter.hpp>
namespace llarp
{
@ -6,7 +7,7 @@ namespace llarp
{
// handle data in upstream direction
bool
IHopHandler::HandleUpstream(const llarp_buffer_t& X, const TunnelNonce& Y, AbstractRouter*)
IHopHandler::HandleUpstream(const llarp_buffer_t& X, const TunnelNonce& Y, AbstractRouter* r)
{
if (not m_UpstreamReplayFilter.Insert(Y))
return false;
@ -17,12 +18,13 @@ namespace llarp
pkt.first.resize(X.sz);
std::copy_n(X.base, X.sz, pkt.first.begin());
pkt.second = Y;
r->loop()->wakeup();
return true;
}
// handle data in downstream direction
bool
IHopHandler::HandleDownstream(const llarp_buffer_t& X, const TunnelNonce& Y, AbstractRouter*)
IHopHandler::HandleDownstream(const llarp_buffer_t& X, const TunnelNonce& Y, AbstractRouter* r)
{
if (not m_DownstreamReplayFilter.Insert(Y))
return false;
@ -33,6 +35,7 @@ namespace llarp
pkt.first.resize(X.sz);
std::copy_n(X.base, X.sz, pkt.first.begin());
pkt.second = Y;
r->loop()->wakeup();
return true;
}

Loading…
Cancel
Save