[Varnish] #1810: HTTP/1.0 EOF from backend broken

Varnish varnish-bugs at varnish-cache.org
Thu Jan 14 15:15:15 CET 2016

#1810: HTTP/1.0 EOF from backend broken
 Reporter:  phk       |       Owner:  phk
     Type:  defect    |      Status:  closed
 Priority:  normal    |   Milestone:
Component:  varnishd  |     Version:  trunk
 Severity:  normal    |  Resolution:  fixed
 Keywords:            |

Comment (by Lasse Karstensen <lkarsten@…>):

 In [d327423897e1f49323496640224227935046ebf1]:
 #!CommitTicketReference repository=""
 So one of those strange cornercases in HTTP/1

 If we send the backend a HTTP/1.0 request, and it doesn't have a
 Content-Length, it cannot use Chunked and must fall back to EOF.

 However, the protocol field in the response tells us what version
 backend *could* have used, not what it *does* use.

 So we can get a response with HTTP/1.1 and EOF, following HTTP/1.0
 semantics - because we asked for it.

 Most sensible backends avoid this, either by buffering and creation
 of a C-L or, smartly, returning "HTTP/1.0", even though that
 is strictly speaking against the apocrphal texts.

 Anyway, now we cope...

 Fixes:  #1810

Ticket URL: <https://www.varnish-cache.org/trac/ticket/1810#comment:5>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator

More information about the varnish-bugs mailing list