Roll src/third_party/WebKit d9c6159:8139f33 (svn 201974:201975)
[chromium-blink-merge.git] / net / cert / ct_ev_whitelist.h
blobf31b7a1d4fbd008cb4628b8576ba656fd3226e82
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef NET_CERT_CT_EV_WHITELIST_H_
6 #define NET_CERT_CT_EV_WHITELIST_H_
8 #include <string>
10 #include "base/memory/ref_counted.h"
11 #include "net/base/net_export.h"
13 namespace base {
15 class Version;
17 } // namespace base
19 namespace net {
21 namespace ct {
23 class NET_EXPORT EVCertsWhitelist
24 : public base::RefCountedThreadSafe<EVCertsWhitelist> {
25 public:
26 // Returns true if the |certificate_hash| appears in the EV certificate hashes
27 // whitelist.
28 virtual bool ContainsCertificateHash(
29 const std::string& certificate_hash) const = 0;
31 // Returns true if the global EV certificate hashes whitelist is non-empty,
32 // false otherwise.
33 virtual bool IsValid() const = 0;
35 // Returns the version of the whitelist in use
36 virtual base::Version Version() const = 0;
38 protected:
39 virtual ~EVCertsWhitelist() {}
41 private:
42 friend class base::RefCountedThreadSafe<EVCertsWhitelist>;
45 } // namespace ct
47 } // namespace net
49 #endif // NET_CERT_CT_EV_WHITELIST_H_