hi steve,<br><br>it does look so indeed. i actually do receive the http_request message:<br><br>{http, Sock, {http_request, Method, Path, Version}}<br><br>even though the GET request has obviously been shortened, so that the remaining part of the GET request gets passed over and then generates the http_error message while parsing headers.<br>
<br>i guess i actually should not receive the http_request message, since the GET header is incomplete.<br><br><br><div class="gmail_quote">2011/6/22 Steve Vinoski <span dir="ltr"><<a href="mailto:vinoski@ieee.org">vinoski@ieee.org</a>></span><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">IMO this is really a bug in the http packet parser. Setting recbuf<br>
might work for this example but if you get a larger URI then it will<br>
obviously fail, as you can't set it large enough.<br>
<br>
For this case the packet parser must realize the http request line is<br>
incomplete and complete the parsing only once the whole request line<br>
arrives. Getting this completely right might well require allowing a<br>
way for the application to control how long a URI it wants to allow,<br>
since if the parser just keeps reading in packets to find the end of<br>
the request line someone could deny service by just sending request<br>
packets that contain a really really long URI.<br>
<br>
--steve<br>
</blockquote></div>