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

Loading…
Cancel
Save