]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Resolve latest merge from trunk(r12137) issues
authorChristos Tsantilas <chtsanti@users.sourceforge.net>
Mon, 28 May 2012 13:44:26 +0000 (16:44 +0300)
committerChristos Tsantilas <chtsanti@users.sourceforge.net>
Mon, 28 May 2012 13:44:26 +0000 (16:44 +0300)
During the latest merge from trunk a part of the "Intelligent handling of
CONNECT denials" patch code removed

src/client_side_request.cc

index 7b06ae352a049894dbfd07af7a1a6110d259bada..26a74e266862425cbce5b3c3d0d74d44cd475e00 100644 (file)
@@ -813,26 +813,19 @@ ClientRequestContext::clientAccessCheckDone(const allow_t &answer)
                 page_id = ERR_ACCESS_DENIED;
         }
 
-        clientStreamNode *node = (clientStreamNode *)http->client_stream.tail->prev->data;
-        clientReplyContext *repContext = dynamic_cast<clientReplyContext *>(node->data.getRaw());
-        assert (repContext);
         Ip::Address tmpnoaddr;
         tmpnoaddr.SetNoAddr();
-        repContext->setReplyToError(page_id, status,
-                                    http->request->method, NULL,
-                                    http->getConn() != NULL ? http->getConn()->clientConnection->remote : tmpnoaddr,
-                                    http->request,
-                                    NULL,
-#if USE_AUTH
-                                    http->getConn() != NULL && http->getConn()->auth_user_request != NULL ?
-                                    http->getConn()->auth_user_request : http->request->auth_user_request);
-#else
-                                    NULL);
-#endif
-        http->getConn()->flags.readMore = true; // resume any pipeline reads.
-        node = (clientStreamNode *)http->client_stream.tail->data;
-        clientStreamRead(node, http, node->readBuffer);
-        return;
+        error = clientBuildError(page_id, status, 
+                                 NULL,
+                                 http->getConn() != NULL ? http->getConn()->clientConnection->remote : tmpnoaddr,
+                                 http->request
+            );
+
+        error->auth_user_request = 
+            http->getConn() != NULL && http->getConn()->auth_user_request != NULL ?
+            http->getConn()->auth_user_request : http->request->auth_user_request;
+
+        readNextRequest = true;
     }
 
     /* ACCESS_ALLOWED continues here ... */