]> git.pld-linux.org Git - packages/squid.git/blame - squid-2.5.STABLE4-digest_auth_pwchange.patch
- more patches:
[packages/squid.git] / squid-2.5.STABLE4-digest_auth_pwchange.patch
CommitLineData
58934a46
AM
1Index: squid/lib/rfc2617.c
2diff -c squid/lib/rfc2617.c:1.5 squid/lib/rfc2617.c:1.5.2.1
3*** squid/lib/rfc2617.c:1.5 Wed Oct 17 07:30:50 2001
4--- squid/lib/rfc2617.c Tue Sep 23 10:05:41 2003
5***************
6*** 79,89 ****
7 unsigned char j;
8
9 for (i = 0; i < HASHHEXLEN; i++) {
10 j = Hex[i];
11 if (('0' <= j) && (j <= '9'))
12! Bin[i / 2] |= ((j - '0') << ((i % 2 == 0) ? 4 : 0));
13 else
14! Bin[i / 2] |= ((j - 'a' + 10) << ((i % 2 == 0) ? 4 : 0));
15 }
16 Bin[HASHLEN] = '\0';
17 }
18--- 79,94 ----
19 unsigned char j;
20
21 for (i = 0; i < HASHHEXLEN; i++) {
22+ unsigned char n;
23 j = Hex[i];
24 if (('0' <= j) && (j <= '9'))
25! n = j - '0';
26 else
27! n = j - 'a' + 10;
28! if (i % 2 == 0)
29! Bin[i / 2] = n << 4;
30! else
31! Bin[i / 2] |= n;
32 }
33 Bin[HASHLEN] = '\0';
34 }
35Index: squid/src/auth/digest/auth_digest.c
36diff -c squid/src/auth/digest/auth_digest.c:1.10.2.7 squid/src/auth/digest/auth_digest.c:1.10.2.8
37*** squid/src/auth/digest/auth_digest.c:1.10.2.7 Sun Aug 10 01:31:33 2003
38--- squid/src/auth/digest/auth_digest.c Tue Sep 23 10:05:41 2003
39***************
40*** 695,701 ****
41 debug(29, 9) ("\nResponse = '%s'\n"
42 "squid is = '%s'\n", digest_request->response, Response);
43
44! if (strcasecmp(digest_request->response, Response)) {
45 if (digestConfig->PostWorkaround && request->method != METHOD_GET) {
46 /* Ugly workaround for certain very broken browsers using the
47 * wrong method to calculate the request-digest on POST request.
48--- 695,707 ----
49 debug(29, 9) ("\nResponse = '%s'\n"
50 "squid is = '%s'\n", digest_request->response, Response);
51
52! if (strcasecmp(digest_request->response, Response) != 0) {
53! if (!digest_request->flags.helper_queried) {
54! /* Query the helper in case the password has changed */
55! digest_request->flags.helper_queried = 1;
56! digest_request->flags.credentials_ok = 2;
57! return;
58! }
59 if (digestConfig->PostWorkaround && request->method != METHOD_GET) {
60 /* Ugly workaround for certain very broken browsers using the
61 * wrong method to calculate the request-digest on POST request.
62Index: squid/src/auth/digest/auth_digest.h
63diff -c squid/src/auth/digest/auth_digest.h:1.5.2.3 squid/src/auth/digest/auth_digest.h:1.5.2.4
64*** squid/src/auth/digest/auth_digest.h:1.5.2.3 Sun May 18 15:49:20 2003
65--- squid/src/auth/digest/auth_digest.h Tue Sep 23 10:05:42 2003
66***************
67*** 44,49 ****
68--- 44,50 ----
69 unsigned int authinfo_sent:1;
70 unsigned int credentials_ok:2; /*0=unchecked,1=ok,2=helper,3=failed */
71 unsigned int nonce_stale:1;
72+ unsigned int helper_queried:1;
73 } flags;
74 digest_nonce_h *nonce;
75 };
This page took 0.122233 seconds and 4 git commands to generate.