#include <HttpStatus.h>

Inheritance diagram for ACLHTTPStatus:
Collaboration diagram for ACLHTTPStatus:

Public Member Functions

 ACLHTTPStatus (char const *)
 
 ~ACLHTTPStatus () override
 
char const * typeString () const override
 
void parse () override
 parses node representation in squid.conf; dies on failures More...
 
int match (ACLChecklist *checklist) override
 Matches the actual data in checklist against this ACL. More...
 
SBufList dump () const override
 
bool empty () const override
 
bool requiresReply () const override
 whether our (i.e. shallow) match() requires checklist to have a reply More...
 
void * operator new (size_t)
 
void operator delete (void *)
 
void context (const char *name, const char *configuration)
 sets user-specified ACL name and squid.conf context More...
 
bool matches (ACLChecklist *checklist) const
 
void parseFlags ()
 configures ACL options, throwing on configuration errors More...
 
virtual bool isProxyAuth () const
 
virtual bool valid () const
 
int cacheMatchAcl (dlink_list *cache, ACLChecklist *)
 
virtual int matchForCache (ACLChecklist *checklist)
 
virtual void prepareForUse ()
 
SBufList dumpOptions ()
 

Static Public Member Functions

static void ParseAclLine (ConfigParser &parser, ACL **head)
 
static void Initialize ()
 
static ACLFindByName (const char *name)
 

Public Attributes

char name [ACL_NAME_SZ]
 
char * cfgline
 
ACLnext
 
bool registered
 added to the global list of ACLs via aclRegister() More...
 

Protected Attributes

Splay< acl_httpstatus_data * > * data
 
char const * class_
 

Private Member Functions

 MEMPROXY_CLASS (ACLHTTPStatus)
 
virtual bool requiresAle () const
 whether our (i.e. shallow) match() requires checklist to have a AccessLogEntry More...
 
virtual bool requiresRequest () const
 whether our (i.e. shallow) match() requires checklist to have a request More...
 
virtual const Acl::Optionsoptions ()
 
virtual const Acl::OptionslineOptions ()
 

Detailed Description

Definition at line 27 of file HttpStatus.h.

Constructor & Destructor Documentation

◆ ACLHTTPStatus()

ACLHTTPStatus::ACLHTTPStatus ( char const *  theClass)

Definition at line 59 of file HttpStatus.cc.

◆ ~ACLHTTPStatus()

ACLHTTPStatus::~ACLHTTPStatus ( )
override

Definition at line 62 of file HttpStatus.cc.

References data, and Splay< V >::destroy().

Member Function Documentation

◆ cacheMatchAcl()

◆ context()

void ACL::context ( const char *  name,
const char *  configuration 
)
inherited

◆ dump()

SBufList ACLHTTPStatus::dump ( ) const
overridevirtual

Implements ACL.

Definition at line 152 of file HttpStatus.cc.

References HttpStatusAclDumpVisitor::contents, data, and Splay< V >::visit().

◆ dumpOptions()

SBufList ACL::dumpOptions ( )
inherited
Returns
approximate options configuration

Definition at line 326 of file Acl.cc.

References SBufStream::buf(), SBuf::isEmpty(), and ACL::options().

Referenced by dump_acl().

◆ empty()

bool ACLHTTPStatus::empty ( ) const
overridevirtual

Implements ACL.

Definition at line 77 of file HttpStatus.cc.

References data, and Splay< V >::empty().

◆ FindByName()

ACL * ACL::FindByName ( const char *  name)
staticinherited

◆ Initialize()

void ACL::Initialize ( )
staticinherited

Definition at line 438 of file Acl.cc.

References SquidConfig::aclList, Config, debugs, ACL::next, and ACL::prepareForUse().

Referenced by serverConnectionsOpen().

◆ isProxyAuth()

bool ACL::isProxyAuth ( ) const
virtualinherited

Reimplemented in ACLProxyAuth, ACLExternal, and ACLIdent.

Definition at line 309 of file Acl.cc.

Referenced by aclIsProxyAuth().

◆ lineOptions()

virtual const Acl::Options & ACL::lineOptions ( )
inlineprivatevirtualinherited
Returns
(linked) "line" Options supported by this ACL
See also
ACL::options()

Reimplemented in ACLExtUser, ACLStrategised< M >, ACLProxyAuth, and ACLIdent.

Definition at line 109 of file Acl.h.

References Acl::NoOptions().

Referenced by ACL::parseFlags().

◆ match()

int ACLHTTPStatus::match ( ACLChecklist checklist)
overridevirtual

Implements ACL.

Definition at line 117 of file HttpStatus.cc.

References aclMatchHTTPStatus(), data, and Filled().

◆ matches()

bool ACL::matches ( ACLChecklist checklist) const
inherited

Orchestrates matching checklist against the ACL using match(), after checking preconditions and while providing debugging.

Returns
true if and only if there was a successful match. Updates the checklist state on match, async, and failure.

Definition at line 146 of file Acl.cc.

References AclMatchedName, ACLChecklist::asyncInProgress(), DBG_IMPORTANT, debugs, ACLChecklist::hasAle(), ACLChecklist::hasReply(), ACLChecklist::hasRequest(), ACL::match(), ACL::name, ACL::requiresAle(), ACL::requiresReply(), ACL::requiresRequest(), and ACLChecklist::verifyAle().

Referenced by ACLChecklist::matchAndFinish(), and ACLChecklist::matchChild().

◆ matchForCache()

int ACL::matchForCache ( ACLChecklist checklist)
virtualinherited

Reimplemented in ACLProxyAuth.

Definition at line 349 of file Acl.cc.

References fatal().

Referenced by ACL::cacheMatchAcl().

◆ MEMPROXY_CLASS()

ACLHTTPStatus::MEMPROXY_CLASS ( ACLHTTPStatus  )
private

◆ operator delete()

void ACL::operator delete ( void *  )
inherited

Definition at line 112 of file Acl.cc.

References fatal().

◆ operator new()

void * ACL::operator new ( size_t  )
inherited

Definition at line 105 of file Acl.cc.

References fatal().

◆ options()

virtual const Acl::Options & ACL::options ( )
inlineprivatevirtualinherited
Returns
(linked) 'global' Options supported by this ACL

Reimplemented in ACLDestinationIP, ACLStrategised< M >, and ACLMaxUserIP.

Definition at line 105 of file Acl.h.

References Acl::NoOptions().

Referenced by ACL::dumpOptions(), and ACL::parseFlags().

◆ parse()

void ACLHTTPStatus::parse ( )
overridevirtual

Implements ACL.

Definition at line 99 of file HttpStatus.cc.

References aclParseHTTPStatusList(), and data.

◆ ParseAclLine()

◆ parseFlags()

void ACL::parseFlags ( )
inherited

Definition at line 315 of file Acl.cc.

References ACL::lineOptions(), ACL::options(), and Acl::ParseFlags().

◆ prepareForUse()

virtual void ACL::prepareForUse ( )
inlinevirtualinherited

Reimplemented in Acl::InnerNode, ACLMaxConnection, and ACLStrategised< M >.

Definition at line 83 of file Acl.h.

Referenced by ACL::Initialize().

◆ requiresAle()

bool ACL::requiresAle ( ) const
privatevirtualinherited

Reimplemented in ACLExternal.

Definition at line 409 of file Acl.cc.

Referenced by ACL::matches().

◆ requiresReply()

bool ACLHTTPStatus::requiresReply ( ) const
inlineoverridevirtual

Reimplemented from ACL.

Definition at line 40 of file HttpStatus.h.

◆ requiresRequest()

bool ACL::requiresRequest ( ) const
privatevirtualinherited

Reimplemented in ACLStrategised< M >, Acl::TransactionInitiator, ACLMaxUserIP, ACLProxyAuth, and ACLExternal.

Definition at line 421 of file Acl.cc.

Referenced by ACL::matches().

◆ typeString()

char const * ACLHTTPStatus::typeString ( ) const
overridevirtual

Implements ACL.

Definition at line 71 of file HttpStatus.cc.

References class_.

◆ valid()

bool ACL::valid ( ) const
virtualinherited

Reimplemented in ACLMaxConnection, ACLRandom, ACLStrategised< M >, ACLMaxUserIP, ACLProxyAuth, and ACLExternal.

Definition at line 140 of file Acl.cc.

Member Data Documentation

◆ cfgline

char* ACL::cfgline
inherited

Definition at line 88 of file Acl.h.

Referenced by ACL::~ACL(), ACL::context(), and Acl::AllOf::parse().

◆ class_

char const* ACLHTTPStatus::class_
protected

Definition at line 44 of file HttpStatus.h.

Referenced by typeString().

◆ data

Splay<acl_httpstatus_data*>* ACLHTTPStatus::data
protected

Definition at line 43 of file HttpStatus.h.

Referenced by ~ACLHTTPStatus(), dump(), empty(), match(), and parse().

◆ name

◆ next

ACL* ACL::next
inherited

Definition at line 89 of file Acl.h.

Referenced by dump_acl(), ACL::FindByName(), and ACL::Initialize().

◆ registered

bool ACL::registered
inherited

Definition at line 90 of file Acl.h.

Referenced by aclDeregister(), aclDestroyAcls(), and aclRegister().


The documentation for this class was generated from the following files:

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors