CertificateData.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_SRC_ACL_CERTIFICATEDATA_H
10 #define SQUID_SRC_ACL_CERTIFICATEDATA_H
11 
12 #include "acl/Acl.h"
13 #include "acl/Data.h"
14 #include "acl/StringData.h"
15 #include "security/forward.h"
16 #include "ssl/support.h"
17 #include <string>
18 #include <list>
19 
21 class ACLCertificateData : public ACLData<X509 *>
22 {
24 
25 public:
26  ACLCertificateData(Ssl::GETX509ATTRIBUTE *, const char *attributes, bool optionalAttr = false);
27  bool match(X509 *) override;
28  SBufList dump() const override;
29  void parse() override;
30  bool empty() const override;
31 
36  const char *validAttributesStr;
38  std::list<std::string> validAttributes;
43 
44 private:
47 };
48 
49 #endif /* SQUID_SRC_ACL_CERTIFICATEDATA_H */
50 
void parse() override
MEMPROXY_CLASS(ACLCertificateData)
std::list< SBuf > SBufList
Definition: forward.h:22
bool match(X509 *) override
Definition: SBuf.h:93
Configured ACL parameter(s) (e.g., domain names in dstdomain ACL).
Definition: Data.h:17
bool empty() const override
bool attributeIsOptional
True if the attribute is optional (-xxx options)
Ssl::GETX509ATTRIBUTE * sslAttributeCall
The callback used to retrieve the data from X509 cert.
ACLCertificateData(Ssl::GETX509ATTRIBUTE *, const char *attributes, bool optionalAttr=false)
std::list< std::string > validAttributes
Parsed list of valid attribute names.
SBufList dump() const override
const char * GETX509ATTRIBUTE(X509 *, const char *)
Definition: support.h:111
const char * validAttributesStr
ACLStringData values

 

Introduction

Documentation

Support

Miscellaneous