mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-02-02 02:44:15 +00:00
delete dead floodfill
This commit is contained in:
parent
1c3f70056a
commit
6042aefd17
@ -710,7 +710,7 @@ namespace util
|
|||||||
if (it.second && it.second->IsEstablished ())
|
if (it.second && it.second->IsEstablished ())
|
||||||
{
|
{
|
||||||
// incoming connection doesn't have remote RI
|
// incoming connection doesn't have remote RI
|
||||||
bool outgoing = it.second->GetRemoteRouter ();
|
auto outgoing = it.second->GetRemoteRouter ();
|
||||||
if (outgoing) s << "-->";
|
if (outgoing) s << "-->";
|
||||||
s << it.second->GetRemoteIdentity ().GetIdentHash ().ToBase64 ().substr (0, 4) << ": "
|
s << it.second->GetRemoteIdentity ().GetIdentHash ().ToBase64 ().substr (0, 4) << ": "
|
||||||
<< it.second->GetSocket ().remote_endpoint().address ().to_string ();
|
<< it.second->GetSocket ().remote_endpoint().address ().to_string ();
|
||||||
@ -727,7 +727,7 @@ namespace util
|
|||||||
for (auto it: ssuServer->GetSessions ())
|
for (auto it: ssuServer->GetSessions ())
|
||||||
{
|
{
|
||||||
// incoming connections don't have remote router
|
// incoming connections don't have remote router
|
||||||
bool outgoing = it.second->GetRemoteRouter ();
|
auto outgoing = it.second->GetRemoteRouter ();
|
||||||
auto endpoint = it.second->GetRemoteEndpoint ();
|
auto endpoint = it.second->GetRemoteEndpoint ();
|
||||||
if (outgoing) s << "-->";
|
if (outgoing) s << "-->";
|
||||||
s << endpoint.address ().to_string () << ":" << endpoint.port ();
|
s << endpoint.address ().to_string () << ":" << endpoint.port ();
|
||||||
|
@ -354,11 +354,18 @@ namespace data
|
|||||||
|
|
||||||
if (it.second->IsUnreachable ())
|
if (it.second->IsUnreachable ())
|
||||||
{
|
{
|
||||||
|
// delete RI file
|
||||||
if (boost::filesystem::exists (GetFilePath (fullDirectory, it.second.get ())))
|
if (boost::filesystem::exists (GetFilePath (fullDirectory, it.second.get ())))
|
||||||
{
|
{
|
||||||
boost::filesystem::remove (GetFilePath (fullDirectory, it.second.get ()));
|
boost::filesystem::remove (GetFilePath (fullDirectory, it.second.get ()));
|
||||||
deletedCount++;
|
deletedCount++;
|
||||||
}
|
}
|
||||||
|
// delete from floodfills list
|
||||||
|
if (it.second->IsFloodfill ())
|
||||||
|
{
|
||||||
|
std::unique_lock<std::mutex> l(m_FloodfillsMutex);
|
||||||
|
m_Floodfills.remove (it.second);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
4
NetDb.h
4
NetDb.h
@ -4,7 +4,7 @@
|
|||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <set>
|
#include <set>
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <vector>
|
#include <list>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <thread>
|
#include <thread>
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
@ -111,7 +111,7 @@ namespace data
|
|||||||
std::map<IdentHash, LeaseSet *> m_LeaseSets;
|
std::map<IdentHash, LeaseSet *> m_LeaseSets;
|
||||||
std::map<IdentHash, std::shared_ptr<RouterInfo> > m_RouterInfos;
|
std::map<IdentHash, std::shared_ptr<RouterInfo> > m_RouterInfos;
|
||||||
mutable std::mutex m_FloodfillsMutex;
|
mutable std::mutex m_FloodfillsMutex;
|
||||||
std::vector<std::shared_ptr<RouterInfo> > m_Floodfills;
|
std::list<std::shared_ptr<RouterInfo> > m_Floodfills;
|
||||||
std::mutex m_RequestedDestinationsMutex;
|
std::mutex m_RequestedDestinationsMutex;
|
||||||
std::map<IdentHash, RequestedDestination *> m_RequestedDestinations;
|
std::map<IdentHash, RequestedDestination *> m_RequestedDestinations;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user