The following reply was made to PR general/4033; it has been noted by GNATS.
From: John-Mark Gurney <[EMAIL PROTECTED]> To: Rodent of Unusual Size <[EMAIL PROTECTED]> Cc: Apache bug database <[EMAIL PROTECTED]> Subject: Re: general/4033: HTTP/0.9 requests yield invalid response Date: Thu, 11 Mar 1999 15:53:36 -0800 Rodent of Unusual Size scribbled this message on Mar 11: > John-Mark Gurney wrote: > > > > > You're missing the point, I think. It *isn't* a 'malformed HTTP/0.9 > > > request,' because HTTP/0.9 requests *never* have a version number. > > > > even though the specs say this (section 6): > > "A Simple-Response should only be sent in response [or case deleted] if > > the server only supports the more limited HTTP/0.9 protocol." > : > > where in the specification does it say that HTTP/0.9 can not generate > > a full-request? > > It is made clear by implication throughout RFC 1945 that 'simple-request' > and 'simple-response' refer to HTTP/0.9. It is not explicitly stated, > but there are several specific cases supporting this interpretation. they implied that it should be the fact, but they then contradicted their implication in words which makes the implication invalid... it's the statement in section 6 that is the statement the contradicts their implication... if the second clause (after the or) didn't exist, I would completely agree with you... > RFC 1945, section 3.1: > > The version of an HTTP message is indicated by an HTTP-Version field > in the first line of the message. If the protocol version is not > specified, the recipient must assume that the message is in the > simple HTTP/0.9 format. > > Contrariwise, if there *is* a version, the request is *not* in > the simple HTTP/0.9 format. Arguable, I suppose.. but: nope, go back to logic 101... we can ONLY assume that the message is in the simple HTTP/0.9 format iff (if and only if) the protocol version is not specified... the only other thing that we can assume in the contrapositive, that if the message is not in a simple HTTP/0.9 format that it has a version specified... you cannot always assume that the converse on a statement is true... > Section 4.1: > > HTTP messages consist of requests from client to server and responses > from server to client. > > HTTP-message = Simple-Request ; HTTP/0.9 messages > | Simple-Response > | Full-Request ; HTTP/1.0 messages > | Full-Response those are comments, they are not formal specifications... they are there to help the reader understand what is going on in the text... section 2.1: ; comment A semi-colon, set off some distance to the right of rule text, starts a comment that continues to the end of line. This is a simple way of including useful notes in parallel with the specifications. > Section 5: > > A request message from a client to a server includes, within the > first line of that message, the method to be applied to the resource, > the identifier of the resource, and the protocol version in use. For > backwards compatibility with the more limited HTTP/0.9 protocol, > there are two valid formats for an HTTP request: > > Request = Simple-Request | Full-Request > > Simple-Request = "GET" SP Request-URI CRLF > > Full-Request = Request-Line ; Section 5.1 > *( General-Header ; Section 4.3 > | Request-Header ; Section 5.2 > | Entity-Header ) ; Section 7.1 > CRLF > [ Entity-Body ] ; Section 7.2 > > If an HTTP/1.0 server receives a Simple-Request, it must respond with > an HTTP/0.9 Simple-Response. > > Section 6: > > A Simple-Response should only be sent in response to an HTTP/0.9 > Simple-Request or if the server only supports the more limited > HTTP/0.9 protocol. re-read this last section, starting at if, why would you not send a simple-request if you only support the HTTP/0.9 spec? this implies that the simple-request is NOT the only method that indicates a HTTP/0.9 transaction... I'm glad that you finally quoted that I had been quoting and re-reading... until you quote text that SPECIFICLY states that HTTP/0.9 shall never send a full-request or that you CAN NOT specify a HTTP/0.9 response by the version field, you will never convince me... and considering that I have just read the complete RFC, that will be hard to do... -- John-Mark Gurney Eugene 4J School District