diff --git a/NTCPSession.cpp b/NTCPSession.cpp index c0ba4451363..30cdf8fdcf5 100644 --- a/NTCPSession.cpp +++ b/NTCPSession.cpp @@ -32,9 +32,6 @@ namespace transport delete m_Establisher; if (m_NextMessage) i2p::DeleteI2NPMessage (m_NextMessage); - for (auto it :m_DelayedMessages) - i2p::DeleteI2NPMessage (it); - m_DelayedMessages.clear (); } void NTCPSession::CreateAESKey (uint8_t * pubKey, i2p::crypto::AESKey& key) @@ -78,18 +75,6 @@ namespace transport m_IsEstablished = false; m_Socket.close (); transports.PeerDisconnected (shared_from_this ()); - int numDelayed = 0; - for (auto it :m_DelayedMessages) - { - // try to send them again - if (m_RemoteRouter) - transports.SendMessage (m_RemoteRouter->GetIdentHash (), it); - numDelayed++; - } - m_DelayedMessages.clear (); - if (numDelayed > 0) - LogPrint (eLogWarning, "NTCP session ", numDelayed, " not sent"); - // TODO: notify tunnels m_Server.RemoveNTCPSession (shared_from_this ()); LogPrint ("NTCP session terminated"); } @@ -108,13 +93,6 @@ namespace transport SendI2NPMessage (CreateDatabaseStoreMsg ()); // we tell immediately who we are transports.PeerConnected (shared_from_this ()); - - if (!m_DelayedMessages.empty ()) - { - for (auto it :m_DelayedMessages) - SendI2NPMessage (it); - m_DelayedMessages.clear (); - } } void NTCPSession::ClientLogin () @@ -637,12 +615,7 @@ namespace transport void NTCPSession::PostI2NPMessage (I2NPMessage * msg) { if (msg) - { - if (m_IsEstablished) - Send (msg); - else - m_DelayedMessages.push_back (msg); - } + Send (msg); } void NTCPSession::ScheduleTermination () diff --git a/NTCPSession.h b/NTCPSession.h index 16d4e11d33c..43c7dc58c26 100644 --- a/NTCPSession.h +++ b/NTCPSession.h @@ -2,7 +2,6 @@ #define NTCP_SESSION_H__ #include -#include #include #include #include @@ -129,7 +128,6 @@ namespace transport int m_ReceiveBufferOffset; i2p::I2NPMessage * m_NextMessage; - std::list m_DelayedMessages; size_t m_NextMessageOffset; size_t m_NumSentBytes, m_NumReceivedBytes; diff --git a/SSUSession.cpp b/SSUSession.cpp index 4618624b7dc..3bf95808192 100644 --- a/SSUSession.cpp +++ b/SSUSession.cpp @@ -757,12 +757,6 @@ namespace transport { SendSesionDestroyed (); transports.PeerDisconnected (shared_from_this ()); - if (!m_DelayedMessages.empty ()) - { - for (auto it :m_DelayedMessages) - DeleteI2NPMessage (it); - m_DelayedMessages.clear (); - } } void SSUSession::Established () @@ -775,12 +769,6 @@ namespace transport } SendI2NPMessage (CreateDatabaseStoreMsg ()); transports.PeerConnected (shared_from_this ()); - if (!m_DelayedMessages.empty ()) - { - for (auto it :m_DelayedMessages) - m_Data.Send (it); - m_DelayedMessages.clear (); - } if (m_PeerTest && (m_RemoteRouter && m_RemoteRouter->IsPeerTesting ())) SendPeerTest (); ScheduleTermination (); @@ -837,12 +825,7 @@ namespace transport void SSUSession::PostI2NPMessage (I2NPMessage * msg) { if (msg) - { - if (m_State == eSessionStateEstablished) - m_Data.Send (msg); - else - m_DelayedMessages.push_back (msg); - } + m_Data.Send (msg); } void SSUSession::ProcessData (uint8_t * buf, size_t len) diff --git a/SSUSession.h b/SSUSession.h index e9848840754..ce840636e7d 100644 --- a/SSUSession.h +++ b/SSUSession.h @@ -3,7 +3,6 @@ #include #include -#include #include #include "aes.h" #include "hmac.h" @@ -132,7 +131,6 @@ namespace transport i2p::crypto::CBCDecryption m_SessionKeyDecryption; i2p::crypto::AESKey m_SessionKey; i2p::crypto::MACKey m_MacKey; - std::list m_DelayedMessages; SSUData m_Data; size_t m_NumSentBytes, m_NumReceivedBytes; uint32_t m_CreationTime; // seconds since epoch