Index: src/client_side.c
===================================================================
RCS file: /cvsroot/squid/squid/src/client_side.c,v
retrieving revision 1.97
diff -u -r1.97 client_side.c
--- src/client_side.c	22 May 2006 22:23:49 -0000	1.97
+++ src/client_side.c	25 May 2006 00:18:07 -0000
@@ -1170,7 +1170,6 @@
     /* If any connection has been pinned to this client, force keep alive */
     if (http->conn->pinned) {
 	request->flags.must_keepalive = 1;
-	request->flags.auth = 1;
 	request->flags.pinned = 1;
     }
     if (httpHeaderHas(req_hdr, HDR_AUTHORIZATION))
Index: src/forward.c
===================================================================
RCS file: /cvsroot/squid/squid/src/forward.c,v
retrieving revision 1.26
diff -u -r1.26 forward.c
--- src/forward.c	24 May 2006 11:53:14 -0000	1.26
+++ src/forward.c	25 May 2006 00:18:08 -0000
@@ -495,7 +495,13 @@
     if (ftimeout < ctimeout)
 	ctimeout = ftimeout;
     if (fwdState->request->flags.pinned)
-	fd = pconnPop(name, port, domain, &fwdState->request->client_addr, fwdState->request->client_port);
+	if(fd = pconnPop(name, port, domain, &fwdState->request->client_addr, fwdState->request->client_port) >= 0) {
+		fwdState->request->flags.auth=1;
+	}
+	else
+	{
+		fwdState->request->flags.pinned = 0;
+	}
 #if LINUX_TPROXY
     if (fd == -1 && (Config.onoff.linux_tproxy) &&
 	((fwdState->request->my_port == Config.tproxy_port) || (Config.tproxy_port == 0)))
