On Wed, Feb 22, 2006 at 12:53:25PM +0000, Joe Orton wrote:
> On Tue, Feb 21, 2006 at 03:45:39PM +0000, Nick Kew wrote:
> > Not as such.  It doesn't need to: it's a MUST in CGI:
> > 
> > 7.2.1.3. Status  
> >  The "Status" header field is used to indicate to the server what status 
> > code 
> > the server MUST use in the response message.
> > 
> > Your patch breaks that, plain and simple.
> 
> Given that the CGI spec does not cover conditional request processing I 
> don't think that's relevant.  There will always be ways that the server 
> will override an explicit "Status: 200" - the byterange filter would do 
> it (before it was changed, for incidental reasons); mod_cgi will now do 
> it if a Location header is also sent, since Jeff has just fixed the real 
> r->status_line handling bug on the trunk.
> 
> As Dave Sparks pointed out in the PR, any downstream HTTP proxy may turn 
> a conditional HTTP request into a 304, so it's not particularly useful 
> to allow the CGI script to force it at the origin.  Any script which 
> relies on that particular behaviour is broken anyway, even if the CGI 
> spec is oblivious to that fact.

If there's nothing else to discuss then given the above I'm -1 on the 
util_script.c r370692 change, the r379562 fix for r->status_line 
handling is the sufficient and correct way to fix PR 38070 (same goes 
for 2.[02].x).

joe

Reply via email to