Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Side by Side Diff: net/ssl/client_cert_store_chromeos.h

Issue 419013003: Replace c/b/nss_context by a KeyedService. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Added Linux implementation. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright 2013 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.
4
5 #ifndef NET_SSL_CLIENT_CERT_STORE_CHROMEOS_H_
6 #define NET_SSL_CLIENT_CERT_STORE_CHROMEOS_H_
7
8 #include <string>
9
10 #include "crypto/scoped_nss_types.h"
11 #include "net/cert/nss_profile_filter_chromeos.h"
12 #include "net/ssl/client_cert_store_nss.h"
13
14 namespace net {
15
16 class NET_EXPORT ClientCertStoreChromeOS : public ClientCertStoreNSS {
17 public:
18 // Constructs a ClientCertStore that will return client certs available on
19 // the user's private and public slots. If |use_system_slot| is true, certs on
20 // the system slot will also be returned.
21 ClientCertStoreChromeOS(
22 bool use_system_slot,
23 const std::string& username_hash,
24 const PasswordDelegateFactory& password_delegate_factory);
25 virtual ~ClientCertStoreChromeOS();
26
27 // ClientCertStoreNSS:
28 virtual void GetClientCerts(const SSLCertRequestInfo& cert_request_info,
29 CertificateList* selected_certs,
30 const base::Closure& callback) OVERRIDE;
31
32 protected:
33 // ClientCertStoreNSS:
34 virtual void GetClientCertsImpl(CERTCertList* cert_list,
35 const SSLCertRequestInfo& request,
36 bool query_nssdb,
37 CertificateList* selected_certs) OVERRIDE;
38
39 private:
40 void DidGetSystemAndPrivateSlot(const SSLCertRequestInfo* request,
41 CertificateList* selected_certs,
42 const base::Closure& callback,
43 crypto::ScopedPK11Slot system_slot,
44 crypto::ScopedPK11Slot private_slot);
45
46 bool use_system_slot_;
47 std::string username_hash_;
48 NSSProfileFilterChromeOS profile_filter_;
49
50 DISALLOW_COPY_AND_ASSIGN(ClientCertStoreChromeOS);
51 };
52
53 } // namespace net
54
55 #endif // NET_SSL_CLIENT_CERT_STORE_CHROMEOS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698