mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-04-28 11:47:48 +02:00
clean code
Signed-off-by: R4SAS <r4sas@i2pmail.org>
This commit is contained in:
parent
650b7abef6
commit
96c4463d39
22 changed files with 574 additions and 574 deletions
|
@ -313,14 +313,14 @@ namespace client
|
|||
{
|
||||
i2p::config::GetOption("addressbook.enabled", m_IsEnabled);
|
||||
if (m_IsEnabled)
|
||||
{
|
||||
{
|
||||
if (!m_Storage)
|
||||
m_Storage = new AddressBookFilesystemStorage;
|
||||
m_Storage->Init();
|
||||
LoadHosts (); /* try storage, then hosts.txt, then download */
|
||||
StartSubscriptions ();
|
||||
StartLookups ();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void AddressBook::StartResolvers ()
|
||||
|
|
|
@ -727,7 +727,7 @@ namespace client
|
|||
std::string address = section.second.get<std::string> (I2P_SERVER_TUNNEL_ADDRESS, "");
|
||||
bool isUniqueLocal = section.second.get(I2P_SERVER_TUNNEL_ENABLE_UNIQUE_LOCAL, true);
|
||||
bool ssl = section.second.get(I2P_SERVER_TUNNEL_SSL, false);
|
||||
|
||||
|
||||
// I2CP
|
||||
std::map<std::string, std::string> options;
|
||||
ReadI2CPOptions (section, true, options);
|
||||
|
@ -868,7 +868,7 @@ namespace client
|
|||
std::string httpOutProxyURL; i2p::config::GetOption("httpproxy.outproxy", httpOutProxyURL);
|
||||
bool httpAddresshelper; i2p::config::GetOption("httpproxy.addresshelper", httpAddresshelper);
|
||||
if (httpAddresshelper)
|
||||
i2p::config::GetOption("addressbook.enabled", httpAddresshelper); // addresshelper is not supported without address book
|
||||
i2p::config::GetOption("addressbook.enabled", httpAddresshelper); // addresshelper is not supported without address book
|
||||
i2p::data::SigningKeyType sigType; i2p::config::GetOption("httpproxy.signaturetype", sigType);
|
||||
LogPrint(eLogInfo, "Clients: Starting HTTP Proxy at ", httpProxyAddr, ":", httpProxyPort);
|
||||
if (httpProxyKeys.length () > 0)
|
||||
|
|
|
@ -86,7 +86,7 @@ namespace client
|
|||
static void MapToLoopback(std::shared_ptr<boost::asio::ip::tcp::socket> sock, const i2p::data::IdentHash & addr)
|
||||
{
|
||||
if (sock)
|
||||
{
|
||||
{
|
||||
// bind to 127.x.x.x address
|
||||
// where x.x.x are first three bytes from ident
|
||||
auto ourIP = GetLoopbackAddressFor(addr);
|
||||
|
@ -101,7 +101,7 @@ namespace client
|
|||
void I2PTunnelConnection::Connect (bool isUniqueLocal)
|
||||
{
|
||||
if (m_Socket)
|
||||
{
|
||||
{
|
||||
I2PTunnelSetSocketOptions (m_Socket);
|
||||
#ifdef __linux__
|
||||
if (isUniqueLocal && m_RemoteEndpoint.address ().is_v4 () &&
|
||||
|
@ -132,7 +132,7 @@ namespace client
|
|||
}
|
||||
Connect (false);
|
||||
}
|
||||
|
||||
|
||||
void I2PTunnelConnection::Terminate ()
|
||||
{
|
||||
if (Kill()) return;
|
||||
|
@ -155,7 +155,7 @@ namespace client
|
|||
m_SSL->async_read_some (boost::asio::buffer(m_Buffer, I2P_TUNNEL_CONNECTION_BUFFER_SIZE),
|
||||
std::bind(&I2PTunnelConnection::HandleReceive, shared_from_this (),
|
||||
std::placeholders::_1, std::placeholders::_2));
|
||||
else
|
||||
else
|
||||
m_Socket->async_read_some (boost::asio::buffer(m_Buffer, I2P_TUNNEL_CONNECTION_BUFFER_SIZE),
|
||||
std::bind(&I2PTunnelConnection::HandleReceive, shared_from_this (),
|
||||
std::placeholders::_1, std::placeholders::_2));
|
||||
|
@ -253,7 +253,7 @@ namespace client
|
|||
if (m_SSL)
|
||||
boost::asio::async_write (*m_SSL, boost::asio::buffer (buf, len), boost::asio::transfer_all (),
|
||||
std::bind (&I2PTunnelConnection::HandleWrite, shared_from_this (), std::placeholders::_1));
|
||||
else
|
||||
else
|
||||
boost::asio::async_write (*m_Socket, boost::asio::buffer (buf, len), boost::asio::transfer_all (),
|
||||
std::bind (&I2PTunnelConnection::HandleWrite, shared_from_this (), std::placeholders::_1));
|
||||
}
|
||||
|
@ -269,9 +269,9 @@ namespace client
|
|||
{
|
||||
LogPrint (eLogDebug, "I2PTunnel: Connected");
|
||||
if (m_SSL)
|
||||
m_SSL->async_handshake (boost::asio::ssl::stream_base::client,
|
||||
m_SSL->async_handshake (boost::asio::ssl::stream_base::client,
|
||||
std::bind (&I2PTunnelConnection::HandleHandshake, shared_from_this (), std::placeholders::_1));
|
||||
else
|
||||
else
|
||||
Established ();
|
||||
}
|
||||
}
|
||||
|
@ -289,7 +289,7 @@ namespace client
|
|||
Established ();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void I2PTunnelConnection::Established ()
|
||||
{
|
||||
if (m_IsQuiet)
|
||||
|
@ -305,8 +305,8 @@ namespace client
|
|||
HandleStreamReceive (boost::system::error_code (), dest.size ());
|
||||
}
|
||||
Receive ();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void I2PClientTunnelConnectionHTTP::Write (const uint8_t * buf, size_t len)
|
||||
{
|
||||
if (m_HeaderSent)
|
||||
|
@ -363,9 +363,9 @@ namespace client
|
|||
StreamReceive (); // read more header
|
||||
else
|
||||
{
|
||||
LogPrint (eLogError, "I2PTunnel: HTTP header exceeds max size ", I2P_TUNNEL_HTTP_MAX_HEADER_SIZE);
|
||||
LogPrint (eLogError, "I2PTunnel: HTTP header exceeds max size ", I2P_TUNNEL_HTTP_MAX_HEADER_SIZE);
|
||||
Terminate ();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -376,7 +376,7 @@ namespace client
|
|||
m_HeaderSent (false), m_ResponseHeaderSent (false), m_From (stream->GetRemoteIdentity ())
|
||||
{
|
||||
if (sslCtx)
|
||||
SSL_set_tlsext_host_name(GetSSL ()->native_handle(), host.c_str ());
|
||||
SSL_set_tlsext_host_name(GetSSL ()->native_handle(), host.c_str ());
|
||||
}
|
||||
|
||||
void I2PServerTunnelConnectionHTTP::Write (const uint8_t * buf, size_t len)
|
||||
|
@ -400,7 +400,7 @@ namespace client
|
|||
// strip up some headers
|
||||
static const std::vector<std::string> excluded // list of excluded headers
|
||||
{
|
||||
"Keep-Alive:", "X-I2P"
|
||||
"Keep-Alive:", "X-I2P"
|
||||
};
|
||||
bool matched = false;
|
||||
for (const auto& it: excluded)
|
||||
|
@ -422,8 +422,8 @@ namespace client
|
|||
else
|
||||
m_OutHeader << "Connection: close\r\n";
|
||||
connection = true;
|
||||
}
|
||||
else // forward as is
|
||||
}
|
||||
else // forward as is
|
||||
m_OutHeader << line << "\n";
|
||||
}
|
||||
}
|
||||
|
@ -455,7 +455,7 @@ namespace client
|
|||
StreamReceive (); // read more header
|
||||
else
|
||||
{
|
||||
LogPrint (eLogError, "I2PTunnel: HTTP header exceeds max size ", I2P_TUNNEL_HTTP_MAX_HEADER_SIZE);
|
||||
LogPrint (eLogError, "I2PTunnel: HTTP header exceeds max size ", I2P_TUNNEL_HTTP_MAX_HEADER_SIZE);
|
||||
Terminate ();
|
||||
}
|
||||
}
|
||||
|
@ -526,7 +526,7 @@ namespace client
|
|||
if (m_NeedsWebIrc)
|
||||
{
|
||||
m_NeedsWebIrc = false;
|
||||
m_OutPacket << "WEBIRC " << m_WebircPass << " cgiirc " << context.GetAddressBook ().ToAddress (m_From->GetIdentHash ())
|
||||
m_OutPacket << "WEBIRC " << m_WebircPass << " cgiirc " << context.GetAddressBook ().ToAddress (m_From->GetIdentHash ())
|
||||
<< " " << GetSocket ()->local_endpoint ().address () << std::endl;
|
||||
}
|
||||
|
||||
|
@ -719,7 +719,7 @@ namespace client
|
|||
auto localDestination = GetLocalDestination ();
|
||||
if (localDestination)
|
||||
localDestination->StopAcceptingStreams ();
|
||||
|
||||
|
||||
ClearHandlers ();
|
||||
}
|
||||
|
||||
|
@ -796,14 +796,14 @@ namespace client
|
|||
void I2PServerTunnel::SetSSL (bool ssl)
|
||||
{
|
||||
if (ssl)
|
||||
{
|
||||
{
|
||||
m_SSLCtx = std::make_shared<boost::asio::ssl::context> (boost::asio::ssl::context::sslv23);
|
||||
m_SSLCtx->set_verify_mode(boost::asio::ssl::context::verify_none);
|
||||
}
|
||||
}
|
||||
else
|
||||
m_SSLCtx = nullptr;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void I2PServerTunnel::Accept ()
|
||||
{
|
||||
if (m_PortDestination)
|
||||
|
@ -1004,7 +1004,7 @@ namespace client
|
|||
|
||||
I2PUDPServerTunnel::I2PUDPServerTunnel (const std::string & name, std::shared_ptr<i2p::client::ClientDestination> localDestination,
|
||||
boost::asio::ip::address localAddress, boost::asio::ip::udp::endpoint forwardTo, uint16_t port, bool gzip) :
|
||||
m_IsUniqueLocal (true), m_Name (name), m_LocalAddress (localAddress),
|
||||
m_IsUniqueLocal (true), m_Name (name), m_LocalAddress (localAddress),
|
||||
m_RemoteEndpoint (forwardTo), m_LocalDest (localDestination), m_Gzip (gzip)
|
||||
{
|
||||
}
|
||||
|
|
|
@ -36,7 +36,7 @@ namespace client
|
|||
const char X_I2P_DEST_B64[] = "X-I2P-DestB64"; // full address in base64
|
||||
const char X_I2P_DEST_B32[] = "X-I2P-DestB32"; // .b32.i2p address
|
||||
const int I2P_TUNNEL_HTTP_MAX_HEADER_SIZE = 8192;
|
||||
|
||||
|
||||
class I2PTunnelConnection: public I2PServiceHandler, public std::enable_shared_from_this<I2PTunnelConnection>
|
||||
{
|
||||
public:
|
||||
|
@ -73,7 +73,7 @@ namespace client
|
|||
void HandleReceive (const boost::system::error_code& ecode, std::size_t bytes_transferred);
|
||||
void HandleWrite (const boost::system::error_code& ecode);
|
||||
void HandleStreamReceive (const boost::system::error_code& ecode, std::size_t bytes_transferred);
|
||||
|
||||
|
||||
private:
|
||||
|
||||
uint8_t m_Buffer[I2P_TUNNEL_CONNECTION_BUFFER_SIZE], m_StreamBuffer[I2P_TUNNEL_CONNECTION_BUFFER_SIZE];
|
||||
|
@ -350,9 +350,9 @@ namespace client
|
|||
void SetUniqueLocal (bool isUniqueLocal) { m_IsUniqueLocal = isUniqueLocal; }
|
||||
bool IsUniqueLocal () const { return m_IsUniqueLocal; }
|
||||
|
||||
void SetSSL (bool ssl);
|
||||
void SetSSL (bool ssl);
|
||||
std::shared_ptr<boost::asio::ssl::context> GetSSLCtx () const { return m_SSLCtx; };
|
||||
|
||||
|
||||
void SetLocalAddress (const std::string& localAddress);
|
||||
|
||||
const std::string& GetAddress() const { return m_Address; }
|
||||
|
|
|
@ -1481,7 +1481,7 @@ namespace client
|
|||
auto localDest = session->GetLocalDestination ();
|
||||
auto datagramDest = localDest ? localDest->GetDatagramDestination () : nullptr;
|
||||
if (datagramDest)
|
||||
{
|
||||
{
|
||||
i2p::data::IdentityEx dest;
|
||||
dest.FromBase64 (destination);
|
||||
if (session->Type == eSAMSessionTypeDatagram)
|
||||
|
@ -1490,7 +1490,7 @@ namespace client
|
|||
datagramDest->SendRawDatagramTo ((uint8_t *)eol, payloadLen, dest.GetIdentHash ());
|
||||
else
|
||||
LogPrint (eLogError, "SAM: Unexpected session type ", (int)session->Type, "for session ", sessionID);
|
||||
}
|
||||
}
|
||||
else
|
||||
LogPrint (eLogError, "SAM: Datagram destination is not set for session ", sessionID);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue