diff --git a/llarp/iwp/message_buffer.cpp b/llarp/iwp/message_buffer.cpp index 8cd20edf2..2252bb3aa 100644 --- a/llarp/iwp/message_buffer.cpp +++ b/llarp/iwp/message_buffer.cpp @@ -163,7 +163,7 @@ namespace llarp bool InboundMessage::ShouldSendACKS(llarp_time_t now) const { - return (now > m_LastACKSent && now - m_LastACKSent > 1000); + return now > m_LastACKSent + (Session::DeliveryTimeout / 4); } bool diff --git a/llarp/iwp/session.cpp b/llarp/iwp/session.cpp index a483ad9ab..5416c6366 100644 --- a/llarp/iwp/session.cpp +++ b/llarp/iwp/session.cpp @@ -596,6 +596,14 @@ namespace llarp } } SendMACK(); + if(m_EncryptNext && !m_EncryptNext->empty()) + { + m_Parent->QueueWork( + [self = shared_from_this(), data = std::move(m_EncryptNext)] { + self->EncryptWorker(data); + }); + m_EncryptNext = nullptr; + } } void diff --git a/llarp/messages/relay.cpp b/llarp/messages/relay.cpp index 3cfe7f65a..08d84e4b8 100644 --- a/llarp/messages/relay.cpp +++ b/llarp/messages/relay.cpp @@ -113,7 +113,7 @@ namespace llarp { return path->HandleDownstream(llarp_buffer_t(X), Y, r); } - llarp::LogWarn("unhandled downstream message"); + llarp::LogWarn("unhandled downstream message id=", pathid); return false; } } // namespace llarp diff --git a/llarp/path/path.cpp b/llarp/path/path.cpp index fd3014831..4f1014f81 100644 --- a/llarp/path/path.cpp +++ b/llarp/path/path.cpp @@ -619,7 +619,7 @@ namespace llarp Path::HandlePathLatencyMessage(const routing::PathLatencyMessage& msg, AbstractRouter* r) { - auto now = r->Now(); + const auto now = r->Now(); MarkActive(now); if(msg.L == m_LastLatencyTestID) {