From adb6f284e8b332ee44bda8328bcea3c3c37bdec6 Mon Sep 17 00:00:00 2001 From: orignal Date: Mon, 24 Feb 2014 19:25:26 -0500 Subject: [PATCH] enable SSU --- RouterContext.cpp | 2 +- RouterInfo.cpp | 2 ++ Transports.cpp | 9 +++------ 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/RouterContext.cpp b/RouterContext.cpp index 6279ee21..af88c84a 100644 --- a/RouterContext.cpp +++ b/RouterContext.cpp @@ -35,7 +35,7 @@ namespace i2p i2p::data::RouterInfo routerInfo; routerInfo.SetRouterIdentity (ident); - //routerInfo.AddSSUAddress ("127.0.0.1", 17007, routerInfo.GetIdentHash ()); + routerInfo.AddSSUAddress ("127.0.0.1", 17007, routerInfo.GetIdentHash ()); routerInfo.AddNTCPAddress ("127.0.0.1", 17007); // TODO: routerInfo.SetProperty ("caps", "LR"); routerInfo.SetProperty ("coreVersion", "0.9.8.1"); diff --git a/RouterInfo.cpp b/RouterInfo.cpp index 88118e5e..8740ef9d 100644 --- a/RouterInfo.cpp +++ b/RouterInfo.cpp @@ -303,6 +303,7 @@ namespace data addr.cost = 2; addr.date = 0; m_Addresses.push_back(addr); + m_SupportedTransports |= eNTCPV4; } void RouterInfo::AddSSUAddress (const char * host, int port, const uint8_t * key) @@ -315,6 +316,7 @@ namespace data addr.date = 0; memcpy (addr.key, key, 32); m_Addresses.push_back(addr); + m_SupportedTransports |= eSSUV4; } void RouterInfo::SetProperty (const char * key, const char * value) diff --git a/Transports.cpp b/Transports.cpp index cc56a86f..c0c0ea8f 100644 --- a/Transports.cpp +++ b/Transports.cpp @@ -39,23 +39,20 @@ namespace i2p auto conn = new i2p::ntcp::NTCPServerConnection (m_Service); m_NTCPAcceptor->async_accept(conn->GetSocket (), boost::bind (&Transports::HandleAccept, this, conn, boost::asio::placeholders::error)); - // temporary always run SSU server - // TODO: uncomment following lines later - /*} + } else if (address.transportStyle == RouterInfo::eTransportSSU) - {*/ + { if (!m_SSUServer) { m_SSUServer = new i2p::ssu::SSUServer (m_Service, address.port); LogPrint ("Start listening UDP port ", address.port); m_SSUServer->Start (); + DetectExternalIP (); } else LogPrint ("SSU server already exists"); } } - - //DetectExternalIP (); } void Transports::Stop ()