mirror of
https://github.com/PurpleI2P/i2pd
synced 2024-11-09 15:50:26 +03:00
reply with CANT_REACH_PEER if connect to outselves
This commit is contained in:
parent
dfe8b25e5e
commit
cd087568b5
@ -523,15 +523,20 @@ namespace client
|
||||
{
|
||||
if (addr->IsIdentHash ())
|
||||
{
|
||||
auto leaseSet = session->GetLocalDestination ()->FindLeaseSet(addr->identHash);
|
||||
if (leaseSet)
|
||||
Connect(leaseSet, session);
|
||||
else
|
||||
{
|
||||
session->GetLocalDestination ()->RequestDestination(addr->identHash,
|
||||
std::bind(&SAMSocket::HandleConnectLeaseSetRequestComplete,
|
||||
shared_from_this(), std::placeholders::_1));
|
||||
if (session->GetLocalDestination ()->GetIdentHash () != addr->identHash)
|
||||
{
|
||||
auto leaseSet = session->GetLocalDestination ()->FindLeaseSet(addr->identHash);
|
||||
if (leaseSet)
|
||||
Connect(leaseSet, session);
|
||||
else
|
||||
{
|
||||
session->GetLocalDestination ()->RequestDestination(addr->identHash,
|
||||
std::bind(&SAMSocket::HandleConnectLeaseSetRequestComplete,
|
||||
shared_from_this(), std::placeholders::_1));
|
||||
}
|
||||
}
|
||||
else
|
||||
SendStreamCantReachPeer ("Can't connect to myself");
|
||||
}
|
||||
else // B33
|
||||
session->GetLocalDestination ()->RequestDestinationWithEncryptedLeaseSet (addr->blindedPublicKey,
|
||||
|
Loading…
Reference in New Issue
Block a user