]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/acl/Gadgets.h
792d0fd9ef687d04c0a1db31b8a26bf24092da3b
2 * Copyright (C) 1996-2016 The Squid Software Foundation and contributors
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.
9 #ifndef SQUID_ACL_GADGETS_H
10 #define SQUID_ACL_GADGETS_H
12 #include "acl/forward.h"
22 /// Register an ACL object for future deletion. Repeated registrations are OK.
24 void aclRegister(ACL
*acl
);
26 void aclDestroyAccessList(acl_access
**list
);
28 void aclDestroyAcls(ACL
**);
30 void aclDestroyAclList(ACLList
**);
31 /// Parses a single line of a "action followed by acls" directive (e.g., http_access).
33 void aclParseAccessLine(const char *directive
, ConfigParser
&parser
, Acl::Tree
**);
34 /// Parses a single line of a "some context followed by acls" directive (e.g., note n v).
35 /// The label parameter identifies the context (for debugging).
37 void aclParseAclList(ConfigParser
&parser
, Acl::Tree
**, const char *label
);
38 /// Template to convert various context lables to strings. \ingroup ACLAPI
41 void aclParseAclList(ConfigParser
&parser
, Acl::Tree
**tree
, const Any any
)
43 std::ostringstream buf
;
45 aclParseAclList(parser
, tree
, buf
.str().c_str());
49 int aclIsProxyAuth(const char *name
);
51 err_type
aclGetDenyInfoPage(AclDenyInfoList
** head
, const char *name
, int redirect_allowed
);
53 void aclParseDenyInfoLine(AclDenyInfoList
**);
55 void aclDestroyDenyInfoList(AclDenyInfoList
**);
57 wordlist
*aclDumpGeneric(const ACL
*);
59 void aclCacheMatchFlush(dlink_list
* cache
);
61 void dump_acl_access(StoreEntry
* entry
, const char *name
, acl_access
* head
);
63 void dump_acl_list(StoreEntry
* entry
, ACLList
* head
);
65 #endif /* SQUID_ACL_GADGETS_H */