mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-01-13 19:37:51 +00:00
print full tunnel path
This commit is contained in:
parent
a7b8b52dbd
commit
badcd64b62
19
Tunnel.cpp
19
Tunnel.cpp
@ -181,6 +181,15 @@ namespace tunnel
|
|||||||
ret.push_back (it->ident);
|
ret.push_back (it->ident);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Tunnel::PrintHops (std::stringstream& s) const
|
||||||
|
{
|
||||||
|
for (auto& it: m_Hops)
|
||||||
|
{
|
||||||
|
s << "-->";
|
||||||
|
s << i2p::data::GetIdentHashAbbreviation (it->ident->GetIdentHash ());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void InboundTunnel::HandleTunnelDataMsg (std::shared_ptr<const I2NPMessage> msg)
|
void InboundTunnel::HandleTunnelDataMsg (std::shared_ptr<const I2NPMessage> msg)
|
||||||
{
|
{
|
||||||
@ -193,9 +202,8 @@ namespace tunnel
|
|||||||
|
|
||||||
void InboundTunnel::Print (std::stringstream& s) const
|
void InboundTunnel::Print (std::stringstream& s) const
|
||||||
{
|
{
|
||||||
s << "-->" << i2p::data::GetIdentHashAbbreviation (GetNextIdentHash ()) << ":" << GetNextTunnelID ();
|
PrintHops (s);
|
||||||
s << "-->" << (GetNumHops () - 1) << " hops ";
|
s << "-->" << GetTunnelID () << ":me";
|
||||||
s << GetTunnelID () << ":me";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void OutboundTunnel::SendTunnelDataMsg (const uint8_t * gwHash, uint32_t gwTunnel, std::shared_ptr<i2p::I2NPMessage> msg)
|
void OutboundTunnel::SendTunnelDataMsg (const uint8_t * gwHash, uint32_t gwTunnel, std::shared_ptr<i2p::I2NPMessage> msg)
|
||||||
@ -235,8 +243,9 @@ namespace tunnel
|
|||||||
|
|
||||||
void OutboundTunnel::Print (std::stringstream& s) const
|
void OutboundTunnel::Print (std::stringstream& s) const
|
||||||
{
|
{
|
||||||
s << "me-->" << i2p::data::GetIdentHashAbbreviation (GetNextIdentHash ()) << ":" << GetNextTunnelID ();
|
s << GetTunnelID () << ":me";
|
||||||
s << "-->" << (GetNumHops () - 1) << " hops-->";
|
PrintHops (s);
|
||||||
|
s << "-->";
|
||||||
}
|
}
|
||||||
|
|
||||||
Tunnels tunnels;
|
Tunnels tunnels;
|
||||||
|
7
Tunnel.h
7
Tunnel.h
@ -62,7 +62,6 @@ namespace tunnel
|
|||||||
std::vector<std::shared_ptr<const i2p::data::IdentityEx> > GetInvertedPeers () const;
|
std::vector<std::shared_ptr<const i2p::data::IdentityEx> > GetInvertedPeers () const;
|
||||||
TunnelState GetState () const { return m_State; };
|
TunnelState GetState () const { return m_State; };
|
||||||
void SetState (TunnelState state) { m_State = state; };
|
void SetState (TunnelState state) { m_State = state; };
|
||||||
int GetNumHops () const { return m_Hops.size (); }
|
|
||||||
bool IsEstablished () const { return m_State == eTunnelStateEstablished; };
|
bool IsEstablished () const { return m_State == eTunnelStateEstablished; };
|
||||||
bool IsFailed () const { return m_State == eTunnelStateFailed; };
|
bool IsFailed () const { return m_State == eTunnelStateFailed; };
|
||||||
bool IsRecreated () const { return m_IsRecreated; };
|
bool IsRecreated () const { return m_IsRecreated; };
|
||||||
@ -76,7 +75,11 @@ namespace tunnel
|
|||||||
// implements TunnelBase
|
// implements TunnelBase
|
||||||
void SendTunnelDataMsg (std::shared_ptr<i2p::I2NPMessage> msg);
|
void SendTunnelDataMsg (std::shared_ptr<i2p::I2NPMessage> msg);
|
||||||
void EncryptTunnelMsg (std::shared_ptr<const I2NPMessage> in, std::shared_ptr<I2NPMessage> out);
|
void EncryptTunnelMsg (std::shared_ptr<const I2NPMessage> in, std::shared_ptr<I2NPMessage> out);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
void PrintHops (std::stringstream& s) const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
std::shared_ptr<const TunnelConfig> m_Config;
|
std::shared_ptr<const TunnelConfig> m_Config;
|
||||||
|
@ -194,25 +194,6 @@ namespace tunnel
|
|||||||
}
|
}
|
||||||
return peers;
|
return peers;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Print (std::stringstream& s) const
|
|
||||||
{
|
|
||||||
TunnelHopConfig * hop = m_FirstHop;
|
|
||||||
if (!IsInbound ()) // outbound
|
|
||||||
s << "me";
|
|
||||||
s << "-->" << m_FirstHop->tunnelID;
|
|
||||||
while (hop)
|
|
||||||
{
|
|
||||||
s << ":" << GetIdentHashAbbreviation (hop->ident->GetIdentHash ()) << "-->";
|
|
||||||
if (!hop->isEndpoint)
|
|
||||||
s << hop->nextTunnelID;
|
|
||||||
else
|
|
||||||
return;
|
|
||||||
hop = hop->next;
|
|
||||||
}
|
|
||||||
// we didn't reach enpoint that mean we are last hop
|
|
||||||
s << ":me";
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user