]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Document bug in clientTunnelOnError
authorAmos Jeffries <squid3@treenet.co.nz>
Tue, 17 Nov 2015 07:06:50 +0000 (23:06 -0800)
committerAmos Jeffries <squid3@treenet.co.nz>
Tue, 17 Nov 2015 07:06:50 +0000 (23:06 -0800)
src/client_side.cc

index c497fa471a3503e79c5d9d53e8da0433e18cc26e..f0a9d759cba2d07c75af2f922a8c8976da93e792 100644 (file)
@@ -2341,6 +2341,9 @@ clientTunnelOnError(ConnStateData *conn, ClientSocketContext *context, HttpReque
         if (answer == ACCESS_ALLOWED && answer.kind == 1) {
             debugs(33, 3, "Request will be tunneled to server");
             if (context) {
+                // XXX: Either the context is finished() or it should stay queued.
+                // The below may leak client streams BodyPipe objects. BUT, we need
+                // to check if client-streams detatch is safe to do here (finished() will detatch).
                 assert(conn->pipeline.front() == context); // XXX: still assumes HTTP/1 semantics
                 conn->pipeline.popMe(ClientSocketContextPointer(context));
             }