]> git.ipfire.org Git - thirdparty/squid.git/commit
Author: Alex Rousskov <rousskov@measurement-factory.com>
authorAmos Jeffries <squid3@treenet.co.nz>
Fri, 17 Jul 2009 13:23:49 +0000 (01:23 +1200)
committerAmos Jeffries <squid3@treenet.co.nz>
Fri, 17 Jul 2009 13:23:49 +0000 (01:23 +1200)
commiteb56b0efd48ae220e8dd0960e1ade676bdbc6847
treeeaacf2622d5f0e792f9889439b7798a86372a04d
parent07860eb999b6d00edddc7e1c2213bd5edaf149a8
Author: Alex Rousskov <rousskov@measurement-factory.com>
Break forwarding loops for "transparent" or "intercept" http_ports.

Squid detected forwarding loops in most configurations, but broke
them (using a customizable HTTP_FORBIDDEN response) only when working as
an accelerator. Squid now breaks loops when working as a transparent
proxy as well.

A persistent loop is going to be broken anyway, when the Via and
X-Forwarded-For headers exceed header size limit, but that wastes a lot of
resources and may also crash misconfigured Squids.

TODO: Consider breaking all loops, regardless of the http_port options.

TODO: Consider adding a specific and/or configurable error page for this case
instead of using hard-coded ACCESS_DENIED.
src/client_side_reply.cc