check if connection to peer exists already

This commit is contained in:
orignal 2015-02-06 18:37:37 -05:00
parent 0518b08ca6
commit 8305fd5f82
2 changed files with 6 additions and 1 deletions

View file

@ -316,6 +316,11 @@ namespace transport
uint8_t * buf = m_ReceiveBuffer;
uint16_t size = bufbe16toh (buf);
m_RemoteIdentity.FromBuffer (buf + 2, size);
if (m_Server.FindNTCPSession (m_RemoteIdentity.GetIdentHash ()))
{
LogPrint (eLogError, "NTCP session already exists");
Terminate ();
}
size_t expectedSize = size + 2/*size*/ + 4/*timestamp*/ + m_RemoteIdentity.GetSignatureLen ();
size_t paddingLen = expectedSize & 0x0F;
if (paddingLen) paddingLen = (16 - paddingLen);