GNU bug report logs -
#13598
24.3.50; url-http.el doesn't correctly parse headers when they are sent line-by-line
Previous Next
Reported by: coroa <at> online.de (Jonas Hoersch)
Date: Thu, 31 Jan 2013 18:11:01 UTC
Severity: normal
Merged with 14372
Found in versions 24.3, 24.3.50
Fixed in version 24.4
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Ahh yes my mistake! I was looking at some wrong sources. Obviously the current "^\r?\n" is correct.
Sorry and thanks!
Blazej
From Glenn Morris <rgm <at> gnu.org> w dniu 27 lut 2014, o godz. 23:43:
Blazej Adamczyk wrote:
By example:
When parsing response we may get in state when we will receive only
the following:
"HTTP/1.0 200 OK^M
"
without double quotes (I added them to show the newline character).
In case of current implementation the regexp "^\r?$" and the previous
regexp "^\r*$" both are matching the end of string. That is wrong
because there will be something in the new line after a while.
The current implementation uses "^\r?\n", not "^\r?$".
Where did you get "^\r?$" from?
As such I do not see that it will match your example.
RFC 2616 states clear:
generic-message = start-line
*(message-header CRLF)
CRLF
[ message-body ]
start-line = Request-Line | Status-Line
there has to be one (exactly one) CR in a single line between headers
and body. Thus I propose a simple regexp "^\r$".
Yes, but as I already quoted in
http://debbugs.gnu.org/13598#17
it also recommends tolerance:
The line terminator for message-header fields is the sequence CRLF.
However, we recommend that applications, when parsing such headers,
recognize a single LF as a line terminator and ignore the leading CR.
[signature.asc (application/pgp-signature, attachment)]
This bug report was last modified 11 years and 78 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.