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

Varnish varnish-bugs at varnish-cache.org
Fri Oct 30 15:26:20 CET 2015


#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:            |
----------------------+---------------------
Changes (by Poul-Henning Kamp <phk@…>):

 * status:  new => closed
 * resolution:   => fixed


Comment:

 In [165f191d68c2637629b6dd4303293c328745acae]:
 {{{
 #!CommitTicketReference repository=""
 revision="165f191d68c2637629b6dd4303293c328745acae"
 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:4>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator



More information about the varnish-bugs mailing list