]> git.pld-linux.org Git - packages/squid.git/blob - squid-2.5.STABLE4-urllogin_acl.patch
- renumbered patches
[packages/squid.git] / squid-2.5.STABLE4-urllogin_acl.patch
1 Index: squid/src/acl.c
2 diff -c squid/src/acl.c:1.270.2.18 squid/src/acl.c:1.270.2.19
3 *** squid/src/acl.c:1.270.2.18  Sat Nov 29 01:59:23 2003
4 --- squid/src/acl.c     Fri Dec 19 09:34:22 2003
5 ***************
6 *** 178,183 ****
7 --- 178,185 ----
8         return ACL_MAX_USER_IP;
9       if (!strcmp(s, "external"))
10         return ACL_EXTERNAL;
11 +     if (!strcmp(s, "urllogin"))
12 +       return ACL_URLLOGIN;
13       return ACL_NONE;
14   }
15   
16 ***************
17 *** 252,257 ****
18 --- 254,261 ----
19         return "max_user_ip";
20       if (type == ACL_EXTERNAL)
21         return "external";
22 +     if (type == ACL_URLLOGIN)
23 +       return "urllogin";
24       return "ERROR";
25   }
26   
27 ***************
28 *** 737,742 ****
29 --- 741,747 ----
30         aclParseTimeSpec(&A->data);
31         break;
32       case ACL_URL_REGEX:
33 +     case ACL_URLLOGIN:
34       case ACL_URLPATH_REGEX:
35       case ACL_BROWSER:
36       case ACL_REFERER_REGEX:
37 ***************
38 *** 1464,1469 ****
39 --- 1469,1475 ----
40       case ACL_URLPATH_REGEX:
41       case ACL_URL_PORT:
42       case ACL_URL_REGEX:
43 +     case ACL_URLLOGIN:
44         /* These ACL types require checklist->request */
45         if (NULL == r) {
46             debug(28, 1) ("WARNING: '%s' ACL is used but there is no"
47 ***************
48 *** 1567,1572 ****
49 --- 1573,1584 ----
50         k = aclMatchRegex(ae->data, esc_buf);
51         safe_free(esc_buf);
52         return k;
53 +     case ACL_URLLOGIN:
54 +       esc_buf = xstrdup(r->login);
55 +       rfc1738_unescape(esc_buf);
56 +       k = aclMatchRegex(ae->data, esc_buf);
57 +       safe_free(esc_buf);
58 +       return k;
59         /* NOTREACHED */
60       case ACL_MAXCONN:
61         k = clientdbEstablished(checklist->src_addr, 0);
62 ***************
63 *** 2114,2119 ****
64 --- 2126,2132 ----
65   #endif
66         case ACL_PROXY_AUTH_REGEX:
67         case ACL_URL_REGEX:
68 +       case ACL_URLLOGIN:
69         case ACL_URLPATH_REGEX:
70         case ACL_BROWSER:
71         case ACL_REFERER_REGEX:
72 ***************
73 *** 2529,2534 ****
74 --- 2542,2548 ----
75         return aclDumpTimeSpecList(a->data);
76       case ACL_PROXY_AUTH_REGEX:
77       case ACL_URL_REGEX:
78 +     case ACL_URLLOGIN:
79       case ACL_URLPATH_REGEX:
80       case ACL_BROWSER:
81       case ACL_REFERER_REGEX:
82 Index: squid/src/cf.data.pre
83 diff -c squid/src/cf.data.pre:1.245.2.56 squid/src/cf.data.pre:1.245.2.57
84 *** squid/src/cf.data.pre:1.245.2.56    Sun Dec 14 06:33:44 2003
85 --- squid/src/cf.data.pre       Fri Dec 19 09:34:22 2003
86 ***************
87 *** 1966,1971 ****
88 --- 1966,1972 ----
89             h1:m1 must be less than h2:m2
90         acl aclname url_regex [-i] ^http:// ... # regex matching on whole URL
91         acl aclname urlpath_regex [-i] \.gif$ ...       # regex matching on URL path
92 +       acl aclname urllogin [-i] [^a-zA-Z0-9] ...      # regex matching on URL login field
93         acl aclname port     80 70 21 ...
94         acl aclname port     0-1024 ...         # ranges allowed
95         acl aclname myport   3128 ...           # (local socket TCP port)
96 Index: squid/src/enums.h
97 diff -c squid/src/enums.h:1.203.2.8 squid/src/enums.h:1.203.2.9
98 *** squid/src/enums.h:1.203.2.8 Mon Jan 20 17:06:39 2003
99 --- squid/src/enums.h   Fri Dec 19 09:34:23 2003
100 ***************
101 *** 136,141 ****
102 --- 136,142 ----
103       ACL_REP_MIME_TYPE,
104       ACL_MAX_USER_IP,
105       ACL_EXTERNAL,
106 +     ACL_URLLOGIN,
107       ACL_ENUM_MAX
108   } squid_acl;
109   
This page took 0.03101 seconds and 3 git commands to generate.