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