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,7 +346,12 @@ 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,7 +433,12 @@ namespace client
} }
} }
else else
{
// insert incomplete line back
m_InHeader.clear ();
m_InHeader << line;
break; break;
}
} }
if (endOfHeader) if (endOfHeader)
@ -496,7 +506,12 @@ namespace client
} }
} }
else else
{
// insert incomplete line back
m_InHeader.clear ();
m_InHeader << line;
break; break;
}
} }
if (endOfHeader) if (endOfHeader)

Loading…
Cancel
Save