]> git.pld-linux.org Git - packages/squid.git/blob - squid-2.5.STABLE4-digest_auth_pwchange.patch
- BR: automake
[packages/squid.git] / squid-2.5.STABLE4-digest_auth_pwchange.patch
1 Index: squid/lib/rfc2617.c
2 diff -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   }
35 Index: squid/src/auth/digest/auth_digest.c
36 diff -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.
62 Index: squid/src/auth/digest/auth_digest.h
63 diff -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.036879 seconds and 3 git commands to generate.