|
Squid Web Cache v8/master
|
#include "squid.h"#include "acl/AclDenyInfoList.h"#include "acl/Gadgets.h"#include "acl/Tree.h"#include "cache_cf.h"#include "ConfigParser.h"#include "errorpage.h"#include "globals.h"#include "HttpRequest.h"#include "SquidConfig.h"#include "src/sbuf/Stream.h"#include <algorithm>Go to the source code of this file.
Functions | |
| err_type | FindDenyInfoPage (const Acl::Answer &answer, const bool redirect_allowed) |
| bool | aclIsProxyAuth (const std::optional< SBuf > &name) |
| void | aclParseDenyInfoLine (AclDenyInfoList **head) |
| void | aclParseAccessLine (const char *directive, ConfigParser &, acl_access **config) |
| Parses a single line of a "action followed by acls" directive (e.g., http_access). | |
| size_t | aclParseAclList (ConfigParser &, ACLList **config, const char *label) |
| void | aclDestroyAclList (ACLList **list) |
| void | aclDestroyAccessList (acl_access **list) |
| void | aclDestroyDenyInfoList (AclDenyInfoList **list) |
| 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().
| void aclParseAccessLine | ( | const char * | directive, |
| ConfigParser & | , | ||
| acl_access ** | config | ||
| ) |
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(), and ToSBuf().
Referenced by HttpUpgradeProtocolAccess::configureGuard(), Adaptation::AccessRule::parse(), parse_acl_access(), parse_ftp_epsv(), parse_http_header_access(), parse_peer_access(), ClientDelayConfig::parsePoolAccess(), DelayConfig::parsePoolAccess(), and MessageDelayConfig::parseResponseDelayPoolAccess().
| size_t aclParseAclList | ( | ConfigParser & | , |
| ACLList ** | config, | ||
| 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).
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().
| err_type FindDenyInfoPage | ( | const Acl::Answer & | answer, |
| bool | allowCustomStatus | ||
| ) |
The first configured deny_info error page ID matching the given access check outcome (or ERR_NONE).
| allowCustomStatus | whether to consider deny_info rules containing custom HTTP response status code |
Definition at line 34 of file Gadgets.cc.
References Config, debugs, SquidConfig::denyInfoList, ERR_NONE, and Acl::Answer::lastCheckedName.
Referenced by ClientRequestContext::clientAccessCheckDone(), Client::handleAdaptationBlocked(), clientReplyContext::processReplyAccessResult(), and FwdState::Start().