AclProxyAuth.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2025 The Squid Software Foundation and contributors
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 
9 #ifndef SQUID_SRC_AUTH_ACLPROXYAUTH_H
10 #define SQUID_SRC_AUTH_ACLPROXYAUTH_H
11 
12 #if USE_AUTH
13 
14 #include "acl/Acl.h"
15 #include "acl/Checklist.h"
16 #include "acl/Data.h"
17 
18 class ACLProxyAuth : public Acl::Node
19 {
21 
22 public:
23  static void StartLookup(ACLFilledChecklist &, const Acl::Node &);
24 
25  ~ACLProxyAuth() override;
26  ACLProxyAuth(ACLData<char const *> *, char const *);
27 
28  /* Acl::Node API */
29  char const *typeString() const override;
30  void parse() override;
31  bool isProxyAuth() const override {return true;}
32  int match(ACLChecklist *checklist) override;
33  SBufList dump() const override;
34  bool valid() const override;
35  bool empty() const override;
36  bool requiresRequest() const override {return true;}
37  int matchForCache(ACLChecklist *checklist) override;
38 
39 private:
40  static void LookupDone(void *data);
41 
42  /* Acl::Node API */
43  const Acl::Options &lineOptions() override;
44 
47  char const *type_;
48 };
49 
50 #endif /* USE_AUTH */
51 #endif /* SQUID_SRC_AUTH_ACLPROXYAUTH_H */
52 
static void StartLookup(ACLFilledChecklist &, const Acl::Node &)
static void LookupDone(void *data)
const char * typeString() const override
Definition: AclProxyAuth.cc:35
std::vector< const Option * > Options
Definition: Options.h:217
std::list< SBuf > SBufList
Definition: forward.h:22
const Acl::Options & lineOptions() override
Definition: AclProxyAuth.cc:41
bool valid() const override
Definition: AclProxyAuth.cc:90
int matchProxyAuth(ACLChecklist *)
ACLData< char const * > * data
Definition: AclProxyAuth.h:46
bool requiresRequest() const override
whether our (i.e. shallow) match() requires checklist to have a request
Definition: AclProxyAuth.h:36
MEMPROXY_CLASS(ACLProxyAuth)
const char * type_
Definition: AclProxyAuth.h:47
bool isProxyAuth() const override
Definition: AclProxyAuth.h:31
SBufList dump() const override
Definition: AclProxyAuth.cc:78
ACLProxyAuth(ACLData< char const * > *, char const *)
Definition: AclProxyAuth.cc:29
~ACLProxyAuth() override
Definition: AclProxyAuth.cc:24
Definition: Node.h:25
int matchForCache(ACLChecklist *checklist) override
bool empty() const override
Definition: AclProxyAuth.cc:84
int match(ACLChecklist *checklist) override
Matches the actual data in checklist against this Acl::Node.
Definition: AclProxyAuth.cc:53
void parse() override
parses node representation in squid.conf; dies on failures
Definition: AclProxyAuth.cc:47

 

Introduction

Documentation

Support

Miscellaneous