mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-01-22 21:37:17 +01:00
cancel destination request
This commit is contained in:
parent
de6dd77046
commit
fdd96975fb
|
@ -495,7 +495,10 @@ namespace client
|
||||||
newDataReceived.notify_all ();
|
newDataReceived.notify_all ();
|
||||||
});
|
});
|
||||||
if (newDataReceived.wait_for (l, std::chrono::seconds (SUBSCRIPTION_REQUEST_TIMEOUT)) == std::cv_status::timeout)
|
if (newDataReceived.wait_for (l, std::chrono::seconds (SUBSCRIPTION_REQUEST_TIMEOUT)) == std::cv_status::timeout)
|
||||||
|
{
|
||||||
LogPrint (eLogError, "Subscription LeseseSet request timeout expired");
|
LogPrint (eLogError, "Subscription LeseseSet request timeout expired");
|
||||||
|
i2p::client::context.GetSharedLocalDestination ()->CancelDestinationRequest (ident);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (leaseSet)
|
if (leaseSet)
|
||||||
{
|
{
|
||||||
|
|
|
@ -533,6 +533,17 @@ namespace client
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ClientDestination::CancelDestinationRequest (const i2p::data::IdentHash& dest)
|
||||||
|
{
|
||||||
|
auto s = shared_from_this ();
|
||||||
|
m_Service.post ([dest, s](void)
|
||||||
|
{
|
||||||
|
auto it = s->m_LeaseSetRequests.find (dest);
|
||||||
|
if (it != s->m_LeaseSetRequests.end ())
|
||||||
|
s->m_LeaseSetRequests.erase (it);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
void ClientDestination::RequestLeaseSet (const i2p::data::IdentHash& dest, RequestComplete requestComplete)
|
void ClientDestination::RequestLeaseSet (const i2p::data::IdentHash& dest, RequestComplete requestComplete)
|
||||||
{
|
{
|
||||||
std::set<i2p::data::IdentHash> excluded;
|
std::set<i2p::data::IdentHash> excluded;
|
||||||
|
|
|
@ -73,6 +73,7 @@ namespace client
|
||||||
bool IsReady () const { return m_LeaseSet && m_LeaseSet->HasNonExpiredLeases () && m_Pool->GetOutboundTunnels ().size () > 0; };
|
bool IsReady () const { return m_LeaseSet && m_LeaseSet->HasNonExpiredLeases () && m_Pool->GetOutboundTunnels ().size () > 0; };
|
||||||
std::shared_ptr<const i2p::data::LeaseSet> FindLeaseSet (const i2p::data::IdentHash& ident);
|
std::shared_ptr<const i2p::data::LeaseSet> FindLeaseSet (const i2p::data::IdentHash& ident);
|
||||||
bool RequestDestination (const i2p::data::IdentHash& dest, RequestComplete requestComplete = nullptr);
|
bool RequestDestination (const i2p::data::IdentHash& dest, RequestComplete requestComplete = nullptr);
|
||||||
|
void CancelDestinationRequest (const i2p::data::IdentHash& dest);
|
||||||
|
|
||||||
// streaming
|
// streaming
|
||||||
std::shared_ptr<i2p::stream::StreamingDestination> CreateStreamingDestination (int port); // additional
|
std::shared_ptr<i2p::stream::StreamingDestination> CreateStreamingDestination (int port); // additional
|
||||||
|
|
Loading…
Reference in a new issue