AclProxyAuth.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2023 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_ACLPROXYAUTH_H
10#define SQUID_ACLPROXYAUTH_H
11
12#if USE_AUTH
13
14#include "acl/Acl.h"
15#include "acl/Checklist.h"
16#include "acl/Data.h"
17
19{
20
21public:
22 static ProxyAuthLookup *Instance();
23 void checkForAsync(ACLChecklist *) const override;
24
25private:
27 static void LookupDone(void *data);
28};
29
30class ACLProxyAuth : public ACL
31{
33
34public:
35 ~ACLProxyAuth() override;
36 ACLProxyAuth(ACLData<char const *> *, char const *);
37
38 /* ACL API */
39 char const *typeString() const override;
40 void parse() override;
41 bool isProxyAuth() const override {return true;}
42 int match(ACLChecklist *checklist) override;
43 SBufList dump() const override;
44 bool valid() const override;
45 bool empty() const override;
46 bool requiresRequest() const override {return true;}
47 int matchForCache(ACLChecklist *checklist) override;
48
49private:
50 /* ACL API */
51 const Acl::Options &lineOptions() override;
52
55 char const *type_;
56};
57
58#endif /* USE_AUTH */
59#endif /* SQUID_ACLPROXYAUTH_H */
60
bool isProxyAuth() const override
Definition: AclProxyAuth.h:41
SBufList dump() const override
Definition: AclProxyAuth.cc:78
int matchProxyAuth(ACLChecklist *)
void parse() override
parses node representation in squid.conf; dies on failures
Definition: AclProxyAuth.cc:47
const Acl::Options & lineOptions() override
Definition: AclProxyAuth.cc:41
ACLProxyAuth(ACLData< char const * > *, char const *)
Definition: AclProxyAuth.cc:29
MEMPROXY_CLASS(ACLProxyAuth)
ACLData< char const * > * data
Definition: AclProxyAuth.h:54
char const * type_
Definition: AclProxyAuth.h:55
~ACLProxyAuth() override
Definition: AclProxyAuth.cc:24
bool valid() const override
Definition: AclProxyAuth.cc:90
bool requiresRequest() const override
whether our (i.e. shallow) match() requires checklist to have a request
Definition: AclProxyAuth.h:46
char const * typeString() const override
Definition: AclProxyAuth.cc:35
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.
Definition: AclProxyAuth.cc:53
Definition: Acl.h:46
static ProxyAuthLookup * Instance()
static void LookupDone(void *data)
static ProxyAuthLookup instance_
Definition: AclProxyAuth.h:26
void checkForAsync(ACLChecklist *) const override
std::vector< const Option * > Options
Definition: Options.h:214
std::list< SBuf > SBufList
Definition: forward.h:23

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors