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

Side by Side Diff: net/base/ssl_client_auth_cache.cc

Issue 10916094: Move the NSS functions out of CertDatabase into a new NSSCertDatabase class. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed comments Created 8 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
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/base/ssl_client_auth_cache.h" 5 #include "net/base/ssl_client_auth_cache.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "net/base/x509_certificate.h" 8 #include "net/base/x509_certificate.h"
9 9
10 namespace net { 10 namespace net {
11 11
12 SSLClientAuthCache::SSLClientAuthCache() { 12 SSLClientAuthCache::SSLClientAuthCache() {
13 CertDatabase::AddObserver(this); 13 CertDatabase cert_db;
14 cert_db.AddObserver(this);
14 } 15 }
15 16
16 SSLClientAuthCache::~SSLClientAuthCache() { 17 SSLClientAuthCache::~SSLClientAuthCache() {
17 CertDatabase::RemoveObserver(this); 18 CertDatabase cert_db;
19 cert_db.RemoveObserver(this);
18 } 20 }
19 21
20 bool SSLClientAuthCache::Lookup( 22 bool SSLClientAuthCache::Lookup(
21 const std::string& server, 23 const std::string& server,
22 scoped_refptr<X509Certificate>* certificate) { 24 scoped_refptr<X509Certificate>* certificate) {
23 DCHECK(certificate); 25 DCHECK(certificate);
24 26
25 AuthCacheMap::iterator iter = cache_.find(server); 27 AuthCacheMap::iterator iter = cache_.find(server);
26 if (iter == cache_.end()) 28 if (iter == cache_.end())
27 return false; 29 return false;
28 30
29 *certificate = iter->second; 31 *certificate = iter->second;
30 return true; 32 return true;
31 } 33 }
32 34
33 void SSLClientAuthCache::Add(const std::string& server, 35 void SSLClientAuthCache::Add(const std::string& server,
34 X509Certificate* value) { 36 X509Certificate* value) {
35 cache_[server] = value; 37 cache_[server] = value;
36 38
37 // TODO(wtc): enforce a maximum number of entries. 39 // TODO(wtc): enforce a maximum number of entries.
38 } 40 }
39 41
40 void SSLClientAuthCache::Remove(const std::string& server) { 42 void SSLClientAuthCache::Remove(const std::string& server) {
41 cache_.erase(server); 43 cache_.erase(server);
42 } 44 }
43 45
44 void SSLClientAuthCache::OnUserCertAdded(const X509Certificate* cert) { 46 void SSLClientAuthCache::OnCertAdded(const X509Certificate* cert) {
45 cache_.clear(); 47 cache_.clear();
46 } 48 }
47 49
48 } // namespace net 50 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698