On Wed, 7 Sep 2011 23:54:54 +0200, Jan Algermissen wrote:
Hi all, I have a question about the behavior of Squid regarding Expect extensions (so I am *not* talking about 100-continue). RFC 2616 mandates that an intermediary that does not understand an Expect extension MUST return 417. Is it possible to extend Squid to understand a certain Expect extension? The intended behavior would be to simply pass on the request (and not respond with a 417). Jan
Of course. Expect: is just a probe to identify whether a specific protocol feature is going to work end-to-end across a series of HTTP hops. All we have to do is write the logics to determine whether the feature requirements can be met.
Squid gateways between different syntax formats of HTTP (v0.9, v1.0, v1.1, with origin and proxy variations). Depending on the feature being probed it could be passed-thru or mapped or rejected with 417. So where can we find the documentation defining this unspecified token, the feature it is probing for. We need the associated request/reply/object syntax for that feature, whether and how the headers can(must?) be translated between the HTTP syntaxes when relaying to/from older hops?
NP: If there is no risk of transaction failure involved from passing it through very old middleware, there is no benefit from sending it as an Expectation. The feature could simply be enabled and used.
Amos