Browse Source

handle incomplete HTTP header lines

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

17
libi2pd_client/I2PTunnel.cpp

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

Loading…
Cancel
Save