]> git.ipfire.org Git - thirdparty/squid.git/commit
Tolerate adapted body delivery failures in REQMOD request satisfaction mode.
authorAlex Rousskov <rousskov@measurement-factory.com>
Tue, 7 Dec 2010 19:32:43 +0000 (12:32 -0700)
committerAlex Rousskov <rousskov@measurement-factory.com>
Tue, 7 Dec 2010 19:32:43 +0000 (12:32 -0700)
commiteae3a9a618a865cf4226a1d5da468e860ed3dffc
tree49bd1ac627767aff4a116fb97dd8d9ce54902381
parentcc7b2f6c57c10196ed10b27fb93758e13c019285
Tolerate adapted body delivery failures in REQMOD request satisfaction mode.

Without these changes, Squid may assert if an ICAP or eCAP service fails
while delivering response body in REQMOD:
    assertion failed: client_side.cc:1438: "rep"

Other assertions may be possible as well, because we were trying to
serve a freshly built, HttpReply-free error response while already
writing the REQMOD "request satisfaction" response. The assertion
probably depends on that writing stage (wrote nothing yet, wrote
headers, wrote some body, etc).

Polished ERR_DETAIL constants to distinguish the special "request
satisfaction" case and to remove ICAP-specific labels from general
adaptation code.
src/client_side_request.cc
src/err_detail_type.h