The unified diff between revisions [569c5734..] and [50c118cb..] is displayed below. It can also be downloaded as a raw diff.
#
#
# patch "src/client_side.c"
# from [aeb1c49f1a704cceb4928f31ac6df0b91c200cad]
# to [b649e6a94275e425a50e713403482b7528a84250]
#
# patch "src/structs.h"
# from [8c514b042f35f6fd32b0a73cf21a9643cf2d6cd4]
# to [0100561257b682f546876e0c6de048c4e1100b38]
#
============================================================
--- src/client_side.c aeb1c49f1a704cceb4928f31ac6df0b91c200cad
+++ src/client_side.c b649e6a94275e425a50e713403482b7528a84250
@@ -1033,8 +1033,12 @@ clientInterpretRequestHeaders(clientHttp
if (request->range)
request->flags.range = 1;
}
- if ((httpHeaderHas(req_hdr, HDR_AUTHORIZATION)) || (request->flags.pinned))
+ if(http->conn->pinned) {
request->flags.auth = 1;
+ request->flags.pinned = 1;
+ }
+ if (httpHeaderHas(req_hdr, HDR_AUTHORIZATION))
+ request->flags.auth = 1;
if (request->login[0] != '\0')
request->flags.auth = 1;
if (httpHeaderHas(req_hdr, HDR_VIA)) {
@@ -1447,6 +1451,7 @@ clientBuildReplyHeader(clientHttpRequest
httpHeaderPutStr(hdr, HDR_PROXY_SUPPORT, "Session-Based-Authentication");
httpHeaderPutStr(hdr, HDR_CONNECTION, "Proxy-support");
request->flags.pinned=1;
+ http->conn->pinned=1;
break;
}
}
============================================================
--- src/structs.h 8c514b042f35f6fd32b0a73cf21a9643cf2d6cd4
+++ src/structs.h 0100561257b682f546876e0c6de048c4e1100b38
@@ -1164,6 +1164,7 @@ struct _ConnStateData {
struct in_addr log_addr;
char rfc931[USER_IDENT_SZ];
int nrequests;
+ int pinned; /* Is this connection pinned */
struct {
int n;
time_t until;