]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/HttpControlMsg.cc
2 * Copyright (C) 1996-2018 The Squid Software Foundation and contributors
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
10 #include "comm/Flag.h"
11 #include "CommCalls.h"
12 #include "HttpControlMsg.h"
15 HttpControlMsgSink::doneWithControlMsg()
17 if (cbControlMsgSent
) {
18 ScheduleCallHere(cbControlMsgSent
);
19 cbControlMsgSent
= nullptr;
23 /// called when we wrote the 1xx response
25 HttpControlMsgSink::wroteControlMsg(const CommIoCbParams
¶ms
)
27 if (params
.flag
== Comm::ERR_CLOSING
)
30 if (params
.flag
== Comm::OK
) {
35 debugs(33, 3, "1xx writing failed: " << xstrerr(params
.xerrno
));
36 // no error notification: see HttpControlMsg.h for rationale and
37 // note that some errors are detected elsewhere (e.g., close handler)
39 // close on 1xx errors to be conservative and to simplify the code
40 // (if we do not close, we must notify the source of a failure!)
43 // XXX: writeControlMsgAndCall() should handle writer-specific writing
44 // results, including errors and then call us with success/failure outcome.