- From: Dan Winship <dan.winship@gmail.com>
- Date: Thu, 26 Jan 2012 08:56:02 -0500
- To: HTTP Working Group <ietf-http-wg@w3.org>
Part 1, section 6.1.3.1 "End-to-end and Hop-by-hop Header Fields" says: > The following HTTP/1.1 header fields are hop-by-hop header fields: > > o Connection > o ... > o Upgrade > > All other header fields defined by HTTP/1.1 are end-to-end header > fields. > > Other hop-by-hop header fields MUST be listed in a Connection header > field (Section 8.1). The fact that it says that "Other" fields must be listed means that the headers in the preceding list *don't* need to be listed, right? But 8.4 says: > The TE header field only applies to the immediate connection. > Therefore, the keyword MUST be supplied within a Connection header > field (Section 8.1) whenever TE is present in an HTTP/1.1 message. And similarly in 8.7: > The Upgrade header field only applies to the immediate connection. > Therefore, the upgrade keyword MUST be supplied within a Connection > header field (Section 8.1) whenever Upgrade is present in an HTTP/1.1 > message. and 8.1 "Connection" seems to agree: > Recipients that trigger certain connection > behavior based on the presence of connection options MUST do so based > on the presence of the connection-token rather than only the presence > of the optional header field. In other words, if the connection > option is received as a header field but not indicated within the > Connection field-value, then the recipient MUST ignore the > connection-specific header field because it has likely been forwarded > by an intermediary that is only partially compliant. I suspect that 8.4 and 8.7 are just wrong, and 8.1 needs to clarify that it's only talking about newly-defined connection options, not the predefined-hop-by-one ones, right? -- Dan
Received on Thursday, 26 January 2012 13:56:39 UTC