]>
Commit | Line | Data |
---|---|---|
bbc27441 | 1 | /* |
5b74111a | 2 | * Copyright (C) 1996-2018 The Squid Software Foundation and contributors |
bbc27441 AJ |
3 | * |
4 | * Squid software is distributed under GPLv2+ license and includes | |
5 | * contributions from numerous individuals and organizations. | |
6 | * Please see the COPYING and CONTRIBUTORS files for details. | |
7 | */ | |
8 | ||
6f58d7d7 AR |
9 | #ifndef SQUID_ACL_FORWARD_H |
10 | #define SQUID_ACL_FORWARD_H | |
11 | ||
abdd93d0 AJ |
12 | #include "base/RefCount.h" |
13 | ||
6f58d7d7 AR |
14 | class ACL; |
15 | class ACLChecklist; | |
16 | class ACLFilledChecklist; | |
17 | class ACLList; | |
18 | ||
6f58d7d7 AR |
19 | class AclDenyInfoList; |
20 | class AclSizeLimit; | |
21 | ||
e936c41c AR |
22 | namespace Acl |
23 | { | |
6f58d7d7 | 24 | |
289848ca | 25 | class Address; |
6f58d7d7 AR |
26 | class InnerNode; |
27 | class NotNode; | |
28 | class AndNode; | |
29 | class OrNode; | |
30 | class Tree; | |
31 | ||
4eac3407 CT |
32 | /// prepares to parse ACLs configuration |
33 | void Init(void); | |
34 | ||
6f58d7d7 AR |
35 | } // namespace Acl |
36 | ||
92ae4c86 AR |
37 | class allow_t; |
38 | typedef void ACLCB(allow_t, void *); | |
39 | ||
6f58d7d7 AR |
40 | #define ACL_NAME_SZ 64 |
41 | ||
b5e48e70 AR |
42 | // TODO: Consider renaming all users and removing. Cons: hides the difference |
43 | // between ACLList tree without actions and acl_access Tree with actions. | |
6f58d7d7 AR |
44 | #define acl_access Acl::Tree |
45 | #define ACLList Acl::Tree | |
46 | ||
abdd93d0 AJ |
47 | class ExternalACLEntry; |
48 | typedef RefCount<ExternalACLEntry> ExternalACLEntryPointer; | |
49 | ||
6f58d7d7 | 50 | #endif /* SQUID_ACL_FORWARD_H */ |
f53969cc | 51 |