void TransitTunnelEndpoint::HandleTunnelDataMsg (i2p::I2NPMessage * tunnelMsg) { EncryptTunnelMsg (tunnelMsg); LogPrint ("TransitTunnel endpoint for ", GetTunnelID ()); m_Endpoint.HandleDecryptedTunnelDataMsg (tunnelMsg); }
void TransitTunnelEndpoint::HandleTunnelDataMsg( std::shared_ptr<const i2p::I2NPMessage> tunnelMsg) { auto newMsg = CreateEmptyTunnelDataMsg(); EncryptTunnelMsg(tunnelMsg, newMsg); LogPrint(eLogDebug, "TransitTunnel endpoint for ", GetTunnelID()); m_Endpoint.HandleDecryptedTunnelDataMsg(newMsg); }
void TransitTunnelParticipant::HandleTunnelDataMsg( std::shared_ptr<const i2p::I2NPMessage> tunnelMsg) { auto newMsg = CreateEmptyTunnelDataMsg(); EncryptTunnelMsg(tunnelMsg, newMsg); m_NumTransmittedBytes += tunnelMsg->GetLength(); htobe32buf(newMsg->GetPayload(), GetNextTunnelID()); newMsg->FillI2NPMessageHeader(e_I2NPTunnelData); m_TunnelDataMsgs.push_back(newMsg); }
void TransitTunnel::HandleTunnelDataMsg (i2p::I2NPMessage * tunnelMsg) { EncryptTunnelMsg (tunnelMsg); LogPrint ("TransitTunnel: ",m_TunnelID,"->", m_NextTunnelID); *(uint32_t *)(tunnelMsg->GetPayload ()) = htobe32 (m_NextTunnelID); FillI2NPMessageHeader (tunnelMsg, eI2NPTunnelData); i2p::transports.SendMessage (m_NextIdent, tunnelMsg); m_NumTransmittedBytes += tunnelMsg->GetLength (); }