UserData.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2019 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_ACLUSERDATA_H
10 #define SQUID_ACLUSERDATA_H
11 
12 #include "acl/Acl.h"
13 #include "acl/Data.h"
14 #include "sbuf/SBuf.h"
15 
16 #include <set>
17 
18 class ACLUserData : public ACLData<char const *>
19 {
21 
22 public:
23  virtual ~ACLUserData() {}
24  ACLUserData();
25  bool match(char const *user);
26  virtual SBufList dump() const;
27  void parse();
28  virtual const Acl::ParameterFlags &supportedFlags() const;
29  bool empty() const;
30  virtual ACLData<char const *> *clone() const;
31 
32 private:
33 
34  typedef std::set<SBuf,bool(*)(const SBuf&, const SBuf&)> UserDataNames_t;
35  UserDataNames_t userDataNames;
36 
37  struct {
39  bool required;
40  } flags;
41 
42 };
43 
44 #endif /* SQUID_ACLUSERDATA_H */
45 
MEMPROXY_CLASS(ACLUserData)
UserDataNames_t userDataNames
Definition: UserData.h:35
virtual SBufList dump() const
Definition: UserData.cc:46
struct ACLUserData::@25 flags
virtual ACLData< char const * > * clone() const
Definition: UserData.cc:149
bool required
Definition: UserData.h:39
Configured ACL parameter(s) (e.g., domain names in dstdomain ACL).
Definition: Data.h:17
bool empty() const
Definition: UserData.cc:140
std::list< SBuf > SBufList
Definition: forward.h:22
virtual const Acl::ParameterFlags & supportedFlags() const
Definition: UserData.cc:21
std::set< SBuf, bool(*)(const SBuf &, const SBuf &)> UserDataNames_t
Definition: UserData.h:34
std::set< OptionName, OptionNameCmp > ParameterFlags
a set of parameter flag names
Definition: Options.h:162
bool case_insensitive
Definition: UserData.h:38
virtual ~ACLUserData()
Definition: UserData.h:23
bool match(char const *user)
Definition: UserData.cc:28
void parse()
Definition: UserData.cc:86

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors