|
|
|
@ -28,11 +28,8 @@ namespace tunnel
|
|
|
|
|
|
|
|
|
|
TunnelPool (i2p::garlic::GarlicDestination& localDestination, int numInboundHops, int numOutboundHops, int numTunnels = 5);
|
|
|
|
|
~TunnelPool ();
|
|
|
|
|
|
|
|
|
|
const uint8_t * GetEncryptionPrivateKey () const { return m_LocalDestination.GetEncryptionPrivateKey (); };
|
|
|
|
|
const uint8_t * GetEncryptionPublicKey () const { return m_LocalDestination.GetEncryptionPublicKey (); };
|
|
|
|
|
i2p::garlic::GarlicDestination& GetLocalDestination () const { return m_LocalDestination; };
|
|
|
|
|
bool IsExploratory () const { return GetIdentHash () == i2p::context.GetIdentHash (); };
|
|
|
|
|
|
|
|
|
|
i2p::garlic::GarlicDestination& GetLocalDestination () const { return m_LocalDestination; };
|
|
|
|
|
|
|
|
|
|
void CreateTunnels ();
|
|
|
|
|
void TunnelCreated (InboundTunnel * createdTunnel);
|
|
|
|
@ -41,8 +38,7 @@ namespace tunnel
|
|
|
|
|
void TunnelExpired (OutboundTunnel * expiredTunnel);
|
|
|
|
|
std::vector<InboundTunnel *> GetInboundTunnels (int num) const;
|
|
|
|
|
OutboundTunnel * GetNextOutboundTunnel (OutboundTunnel * suggested = nullptr) const;
|
|
|
|
|
InboundTunnel * GetNextInboundTunnel (InboundTunnel * suggested = nullptr) const;
|
|
|
|
|
const i2p::data::IdentHash& GetIdentHash () const { return m_LocalDestination.GetIdentHash (); };
|
|
|
|
|
InboundTunnel * GetNextInboundTunnel (InboundTunnel * suggested = nullptr) const;
|
|
|
|
|
|
|
|
|
|
void TestTunnels ();
|
|
|
|
|
void ProcessDeliveryStatus (I2NPMessage * msg);
|
|
|
|
|