1
0
mirror of https://github.com/PurpleI2P/i2pd.git synced 2025-01-22 08:14:15 +00:00

use shared_ptr for transit tunnel participant

This commit is contained in:
orignal 2015-06-17 12:31:28 -04:00
parent 98c91a01e3
commit 122b8c2a84
2 changed files with 3 additions and 4 deletions

View File

@ -27,8 +27,6 @@ namespace tunnel
TransitTunnelParticipant::~TransitTunnelParticipant ()
{
for (auto it: m_TunnelDataMsgs)
i2p::DeleteI2NPMessage (it);
}
void TransitTunnelParticipant::HandleTunnelDataMsg (i2p::I2NPMessage * tunnelMsg)
@ -38,7 +36,7 @@ namespace tunnel
m_NumTransmittedBytes += tunnelMsg->GetLength ();
htobe32buf (tunnelMsg->GetPayload (), GetNextTunnelID ());
FillI2NPMessageHeader (tunnelMsg, eI2NPTunnelData);
m_TunnelDataMsgs.push_back (tunnelMsg);
m_TunnelDataMsgs.push_back (ToSharedI2NPMessage (tunnelMsg));
}
void TransitTunnelParticipant::FlushTunnelDataMsgs ()

View File

@ -4,6 +4,7 @@
#include <inttypes.h>
#include <vector>
#include <mutex>
#include <memory>
#include "aes.h"
#include "I2NPProtocol.h"
#include "TunnelEndpoint.h"
@ -59,7 +60,7 @@ namespace tunnel
private:
size_t m_NumTransmittedBytes;
std::vector<i2p::I2NPMessage *> m_TunnelDataMsgs;
std::vector<std::shared_ptr<i2p::I2NPMessage> > m_TunnelDataMsgs;
};
class TransitTunnelGateway: public TransitTunnel