mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-02-08 17:04:13 +00:00
don't try SSU peer test if SSU is disabled
This commit is contained in:
parent
a1e414c3b7
commit
3ed625f949
@ -636,28 +636,30 @@ namespace transport
|
|||||||
LogPrint (eLogInfo, "Transports: Started peer test IPv4");
|
LogPrint (eLogInfo, "Transports: Started peer test IPv4");
|
||||||
std::set<i2p::data::IdentHash> excluded;
|
std::set<i2p::data::IdentHash> excluded;
|
||||||
excluded.insert (i2p::context.GetIdentHash ()); // don't pick own router
|
excluded.insert (i2p::context.GetIdentHash ()); // don't pick own router
|
||||||
bool statusChanged = false;
|
if (m_SSUServer)
|
||||||
for (int i = 0; i < 5; i++)
|
{
|
||||||
{
|
bool statusChanged = false;
|
||||||
auto router = i2p::data::netdb.GetRandomPeerTestRouter (true, excluded); // v4
|
for (int i = 0; i < 5; i++)
|
||||||
if (router)
|
|
||||||
{
|
{
|
||||||
auto addr = router->GetSSUAddress (true); // ipv4
|
auto router = i2p::data::netdb.GetRandomPeerTestRouter (true, excluded); // v4
|
||||||
if (addr && !i2p::util::net::IsInReservedRange(addr->host))
|
if (router)
|
||||||
{
|
{
|
||||||
if (!statusChanged)
|
auto addr = router->GetSSUAddress (true); // ipv4
|
||||||
|
if (addr && !i2p::util::net::IsInReservedRange(addr->host))
|
||||||
{
|
{
|
||||||
statusChanged = true;
|
if (!statusChanged)
|
||||||
i2p::context.SetStatus (eRouterStatusTesting); // first time only
|
{
|
||||||
|
statusChanged = true;
|
||||||
|
i2p::context.SetStatus (eRouterStatusTesting); // first time only
|
||||||
|
}
|
||||||
|
m_SSUServer->CreateSession (router, addr, true); // peer test v4
|
||||||
}
|
}
|
||||||
m_SSUServer->CreateSession (router, addr, true); // peer test v4
|
excluded.insert (router->GetIdentHash ());
|
||||||
}
|
}
|
||||||
excluded.insert (router->GetIdentHash ());
|
|
||||||
}
|
}
|
||||||
|
if (!statusChanged)
|
||||||
|
LogPrint (eLogWarning, "Transports: Can't find routers for peer test IPv4");
|
||||||
}
|
}
|
||||||
if (!statusChanged)
|
|
||||||
LogPrint (eLogWarning, "Transports: Can't find routers for peer test IPv4");
|
|
||||||
|
|
||||||
// SSU2
|
// SSU2
|
||||||
if (m_SSU2Server)
|
if (m_SSU2Server)
|
||||||
{
|
{
|
||||||
@ -673,28 +675,31 @@ namespace transport
|
|||||||
LogPrint (eLogInfo, "Transports: Started peer test IPv6");
|
LogPrint (eLogInfo, "Transports: Started peer test IPv6");
|
||||||
std::set<i2p::data::IdentHash> excluded;
|
std::set<i2p::data::IdentHash> excluded;
|
||||||
excluded.insert (i2p::context.GetIdentHash ()); // don't pick own router
|
excluded.insert (i2p::context.GetIdentHash ()); // don't pick own router
|
||||||
bool statusChanged = false;
|
if (m_SSUServer)
|
||||||
for (int i = 0; i < 5; i++)
|
{
|
||||||
{
|
bool statusChanged = false;
|
||||||
auto router = i2p::data::netdb.GetRandomPeerTestRouter (false, excluded); // v6
|
for (int i = 0; i < 5; i++)
|
||||||
if (router)
|
|
||||||
{
|
{
|
||||||
auto addr = router->GetSSUV6Address ();
|
auto router = i2p::data::netdb.GetRandomPeerTestRouter (false, excluded); // v6
|
||||||
if (addr && !i2p::util::net::IsInReservedRange(addr->host))
|
if (router)
|
||||||
{
|
{
|
||||||
if (!statusChanged)
|
auto addr = router->GetSSUV6Address ();
|
||||||
|
if (addr && !i2p::util::net::IsInReservedRange(addr->host))
|
||||||
{
|
{
|
||||||
statusChanged = true;
|
if (!statusChanged)
|
||||||
i2p::context.SetStatusV6 (eRouterStatusTesting); // first time only
|
{
|
||||||
|
statusChanged = true;
|
||||||
|
i2p::context.SetStatusV6 (eRouterStatusTesting); // first time only
|
||||||
|
}
|
||||||
|
m_SSUServer->CreateSession (router, addr, true); // peer test v6
|
||||||
}
|
}
|
||||||
m_SSUServer->CreateSession (router, addr, true); // peer test v6
|
excluded.insert (router->GetIdentHash ());
|
||||||
}
|
}
|
||||||
excluded.insert (router->GetIdentHash ());
|
|
||||||
}
|
}
|
||||||
|
if (!statusChanged)
|
||||||
|
LogPrint (eLogWarning, "Transports: Can't find routers for peer test IPv6");
|
||||||
}
|
}
|
||||||
if (!statusChanged)
|
|
||||||
LogPrint (eLogWarning, "Transports: Can't find routers for peer test IPv6");
|
|
||||||
|
|
||||||
// SSU2
|
// SSU2
|
||||||
if (m_SSU2Server)
|
if (m_SSU2Server)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user