handle .i2p address for BOB inbound connections

This commit is contained in:
orignal 2014-12-04 14:16:33 -05:00
parent 08762870b4
commit 519330015f
2 changed files with 13 additions and 4 deletions

View File

@ -182,9 +182,15 @@ namespace client
ident = *identHash;
return true;
}
else
return false;
}
}
return false;
// if not .b32 we assume full base64 address
i2p::data::IdentityEx dest;
dest.FromBase64 (address);
ident = dest.GetIdentHash ();
return true;
}
const i2p::data::IdentHash * AddressBook::FindAddress (const std::string& address)

View File

@ -76,9 +76,12 @@ namespace client
m_ReceivedData = (uint8_t *)eol + 1;
m_ReceivedDataLen = bytes_transferred - (eol - m_ReceiveBuffer + 1);
i2p::data::IdentHash ident;
i2p::data::IdentityEx dest;
dest.FromBase64 (m_ReceiveBuffer); // TODO: might be .i2p address
ident = dest.GetIdentHash ();
if (!context.GetAddressBook ().GetIdentHash (m_ReceiveBuffer, ident))
{
LogPrint (eLogError, "BOB address ", m_ReceiveBuffer, " not found");
delete socket;
return;
}
auto leaseSet = GetLocalDestination ()->FindLeaseSet (ident);
if (leaseSet)
CreateConnection (socket, leaseSet);