clear unreachable flag upon succesive connect

pull/1952/head
orignal 11 months ago
parent e7157cf15e
commit c620fc1232

@ -424,12 +424,9 @@ namespace data
if (r)
{
r->SetUnreachable (unreachable);
if (unreachable)
{
auto profile = r->GetProfile ();
if (profile)
profile->Unreachable ();
}
auto profile = r->GetProfile ();
if (profile)
profile->Unreachable (unreachable);
}
}

@ -165,12 +165,12 @@ namespace data
}
}
void RouterProfile::Unreachable ()
void RouterProfile::Unreachable (bool unreachable)
{
m_LastUnreachableTime = i2p::util::GetSecondsSinceEpoch ();
m_LastUnreachableTime = unreachable ? i2p::util::GetSecondsSinceEpoch () : 0;
UpdateTime ();
}
void RouterProfile::Connected ()
{
m_HasConnected = true;

@ -55,7 +55,7 @@ namespace data
void TunnelBuildResponse (uint8_t ret);
void TunnelNonReplied ();
void Unreachable ();
void Unreachable (bool unreachable);
void Connected ();
boost::posix_time::ptime GetLastUpdateTime () const { return m_LastUpdateTime; };

@ -716,6 +716,7 @@ namespace transport
if (transport == i2p::data::RouterInfo::eNTCP2V4 ||
transport == i2p::data::RouterInfo::eNTCP2V6 || transport == i2p::data::RouterInfo::eNTCP2V6Mesh)
it->second.router->GetProfile ()->Connected (); // outgoing NTCP2 connection if always real
i2p::data::netdb.SetUnreachable (ident, false); // clear unreachable
}
it->second.numAttempts = 0;
it->second.router = nullptr; // we don't need RouterInfo after successive connect

Loading…
Cancel
Save