#include "acl/forward.h"
#include "error/forward.h"
#include "sbuf/forward.h"
#include <optional>
#include <sstream>
![](acl_2Gadgets_8h__incl.png)
![](acl_2Gadgets_8h__dep__incl.png)
Go to the source code of this file.
Namespaces | |
Acl | |
Functions | |
void | aclDestroyAccessList (acl_access **list) |
void | aclDestroyAclList (ACLList **) |
void | aclParseAccessLine (const char *directive, ConfigParser &, acl_access **) |
Parses a single line of a "action followed by acls" directive (e.g., http_access). More... | |
size_t | aclParseAclList (ConfigParser &, ACLList **, const char *label) |
template<class Any > | |
size_t | aclParseAclList (ConfigParser &parser, ACLList **const tree, const Any any) |
Template to convert various context labels to strings. More... | |
bool | aclIsProxyAuth (const std::optional< SBuf > &name) |
err_type | FindDenyInfoPage (const Acl::Answer &, bool allowCustomStatus) |
void | aclParseDenyInfoLine (AclDenyInfoList **) |
void | aclDestroyDenyInfoList (AclDenyInfoList **) |
wordlist * | aclDumpGeneric (const Acl::Node *) |
void | aclCacheMatchFlush (dlink_list *cache) |
void | dump_acl_access (StoreEntry *entry, const char *name, acl_access *head) |
void | dump_acl_list (StoreEntry *entry, ACLList *head) |
const Tree & | Acl::ToTree (const TreePointer *cfg) |
Function Documentation
◆ aclIsProxyAuth()
bool aclIsProxyAuth | ( | const std::optional< SBuf > & | name | ) |
Whether the given name names an Acl::Node object with true isProxyAuth() result. This is a safe variation of Acl::Node::FindByName(*name)->isProxyAuth().
Definition at line 62 of file Gadgets.cc.
References debugs, and Acl::Node::FindByName().
Referenced by ClientRequestContext::clientAccessCheckDone().
◆ aclParseAccessLine()
void aclParseAccessLine | ( | const char * | directive, |
ConfigParser & | , | ||
acl_access ** | |||
) |
Definition at line 132 of file Gadgets.cc.
References ACCESS_ALLOWED, ACCESS_DENIED, ACCESS_DUNNO, assert, cfg_filename, Acl::InnerNode::childrenCount(), config_input_line, config_lineno, Acl::Node::context(), DBG_CRITICAL, debugs, Acl::InnerNode::empty(), Acl::InnerNode::lineParse(), ConfigParser::NextToken(), ToSBuf(), and Acl::ToTree().
Referenced by HttpUpgradeProtocolAccess::configureGuard(), Adaptation::AccessRule::parse(), parse_acl_access(), parse_ftp_epsv(), parse_http_header_access(), parse_peer_access(), DelayConfig::parsePoolAccess(), ClientDelayConfig::parsePoolAccess(), and MessageDelayConfig::parseResponseDelayPoolAccess().
◆ aclParseAclList()
size_t aclParseAclList | ( | ConfigParser & | , |
ACLList ** | , | ||
const char * | label | ||
) |
Parses a single line of a "some context followed by acls" directive (e.g., note n v). The label parameter identifies the context (for debugging).
- Returns
- the number of parsed ACL names
Definition at line 184 of file Gadgets.cc.
References Acl::Tree::add(), assert, cfg_directive, config_input_line, Acl::Node::context(), Acl::InnerNode::lineParse(), and ToSBuf().
Referenced by aclParseAclList(), ConfigParser::optionalAclList(), Notes::parse(), parse_access_log(), parse_acl_address(), parse_acl_b_size_t(), parse_acl_tos(), parse_HeaderWithAclList(), parse_sslproxy_cert_adapt(), and parse_sslproxy_cert_sign().
◆ FindDenyInfoPage()
err_type FindDenyInfoPage | ( | const Acl::Answer & | , |
bool | allowCustomStatus | ||
) |
The first configured deny_info error page ID matching the given access check outcome (or ERR_NONE).
- Parameters
-
allowCustomStatus whether to consider deny_info rules containing custom HTTP response status code
Definition at line 34 of file Gadgets.cc.
References A, Config, debugs, SquidConfig::denyInfoList, ERR_NONE, and Acl::Answer::lastCheckedName.
Referenced by ClientRequestContext::clientAccessCheckDone(), Client::handleAdaptationBlocked(), clientReplyContext::processReplyAccessResult(), and FwdState::Start().
Introduction
- About Squid
- Why Squid?
- Squid Developers
- How to Donate
- How to Help Out
- Getting Squid
- Squid Source Packages
- Squid Deployment Case-Studies
- Squid Software Foundation
Documentation
- Quick Setup
- Configuration:
- FAQ and Wiki
- Guide Books:
- Non-English
- More...
Support
- Security Advisories
- Bugzilla Database
- Mailing lists
- Contacting us
- Commercial services
- Project Sponsors
- Squid-based products