Bug #1796
closedopen-uri doesn't support multiline server headers
Description
=begin
When a server sends a multiline header, open-uri raises an exception with the message 'wrong header line format'.
Multi-line headers are valid since RFC 2616 says: 'Each header field consists of a name followed by a colon (":") and the field value. Field names are case-insensitive. The field value MAY be preceded by any amount of LWS, though a single SP is preferred. Header fields can be extended over multiple lines by preceding each extra line with at least one SP or HT'.
The problem is in the line 2034 of net/http.rb where the code handles response headers. It reads bytes until a new line character is detected and expects each header in one line. Nonetheless it has to read until a line followed by a non space/tab character is detected.
=end
Files
Updated by m.carrasco.m (Manuel Carrasco) about 15 years ago
=begin
I attach a patch that fixes this bug.
The patch makes extra header lines be ignored.
Thanks
=end
Updated by naruse (Yui NARUSE) about 15 years ago
- Category set to lib
- Status changed from Open to Assigned
- Assignee set to akr (Akira Tanaka)
=begin
=end
Updated by nahi (Hiroshi Nakamura) about 15 years ago
=begin
I fixed the bug of net/http at r25577.
Manuel, would you please post the actual HTTP response header that caused the problem?
I added some tests but I want to ensure the problem won't happen again for you.
Thanks in advance.
=end
Updated by naruse (Yui NARUSE) about 15 years ago
- Status changed from Assigned to Feedback
=begin
=end
Updated by naruse (Yui NARUSE) almost 15 years ago
- Status changed from Feedback to Closed
=begin
=end