Browse Source

fixed server http tunnel header

pull/358/head
orignal 9 years ago
parent
commit
77d8bae2c2
  1. 8
      I2PTunnel.cpp

8
I2PTunnel.cpp

@ -134,7 +134,7 @@ namespace client @@ -134,7 +134,7 @@ namespace client
void I2PTunnelConnection::Write (const uint8_t * buf, size_t len)
{
m_Socket->async_send (boost::asio::buffer (buf, len),
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));
}
@ -183,12 +183,15 @@ namespace client @@ -183,12 +183,15 @@ namespace client
{
std::getline(m_InHeader, line);
if (!m_InHeader.fail ())
{
if (line == "\r") endOfHeader = true;
else
{
if (line.find ("Host:") != std::string::npos)
m_OutHeader << "Host: " << m_Host << "\r\n";
else
m_OutHeader << line << "\n";
if (line == "\r") endOfHeader = true;
}
}
else
break;
@ -203,6 +206,7 @@ namespace client @@ -203,6 +206,7 @@ namespace client
if (endOfHeader)
{
m_OutHeader << "\r\n"; // end of header
m_OutHeader << m_InHeader.str (); // data right after header
m_HeaderSent = true;
I2PTunnelConnection::Write ((uint8_t *)m_OutHeader.str ().c_str (), m_OutHeader.str ().length ());

Loading…
Cancel
Save