Browse Source

handle incomplete HTTP header lines

debian
orignal 2 years ago
parent
commit
7a12b5ca4b
  1. 17
      libi2pd_client/I2PTunnel.cpp

17
libi2pd_client/I2PTunnel.cpp

@ -346,8 +346,13 @@ namespace client
} }
} }
else else
{
// insert incomplete line back
m_InHeader.clear ();
m_InHeader << line;
break; break;
} }
}
if (endOfHeader) if (endOfHeader)
{ {
@ -409,7 +414,7 @@ namespace client
matched = true; matched = true;
break; break;
} }
if (matched) break; if (matched) continue;
// replace some headers // replace some headers
if (!m_Host.empty () && boost::iequals (line.substr (0, 5), "Host:")) if (!m_Host.empty () && boost::iequals (line.substr (0, 5), "Host:"))
@ -428,8 +433,13 @@ namespace client
} }
} }
else else
{
// insert incomplete line back
m_InHeader.clear ();
m_InHeader << line;
break; break;
} }
}
if (endOfHeader) if (endOfHeader)
{ {
@ -496,8 +506,13 @@ namespace client
} }
} }
else else
{
// insert incomplete line back
m_InHeader.clear ();
m_InHeader << line;
break; break;
} }
}
if (endOfHeader) if (endOfHeader)
{ {

Loading…
Cancel
Save