use inbound sessions we don't have paths to in GetBestConvoTagFor just so we can give the caller SOMETHING.

pull/1658/head
Jeff Becker 3 years ago
parent b03d17bc8e
commit 85cd1b6863
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05

@ -924,7 +924,7 @@ namespace llarp
EnsurePathToService(
addr,
[pkt](service::Address addr, service::OutboundContext* ctx) {
if(ctx)
if (ctx)
{
ctx->SendPacketToRemote(pkt.ConstBuffer(), service::ProtocolType::Exit);
return;

@ -1654,6 +1654,13 @@ namespace llarp
}
if (session.inbound)
{
// if we have no reply intro for this session just add it so we can at least get
// SOMETHING.
if (session.replyIntro.router.IsZero())
{
ret = tag;
continue;
}
auto path = GetPathByRouter(session.replyIntro.router);
if (path and path->IsReady())
{
@ -1850,7 +1857,7 @@ namespace llarp
}
else
{
LogWarn("Have inbound convo but get-best returned none; bug?");
LogWarn("Have inbound convo from ", remote, " but get-best returned none; bug?");
}
}

Loading…
Cancel
Save