1 // Copyright (c) 2012 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 #include "net/cert/cert_database.h" 6 7 #include "base/logging.h" 8 #include "base/observer_list_threadsafe.h" 9 #include "net/base/net_errors.h" 10 11 namespace net { 12 CertDatabase()13CertDatabase::CertDatabase() 14 : observer_list_(new ObserverListThreadSafe<Observer>) { 15 } 16 ~CertDatabase()17CertDatabase::~CertDatabase() {} 18 CheckUserCert(X509Certificate * cert)19int CertDatabase::CheckUserCert(X509Certificate* cert) { 20 // NOTE: This method shall never be called on Android. 21 // 22 // On other platforms, it is only used by the SSLAddCertHandler class 23 // to handle veritication and installation of downloaded certificates. 24 // 25 // On Android, the certificate data is passed directly to the system's 26 // CertInstaller activity, which handles verification, naming, 27 // installation and UI (for success/failure). 28 NOTIMPLEMENTED(); 29 return ERR_NOT_IMPLEMENTED; 30 } 31 AddUserCert(X509Certificate * cert)32int CertDatabase::AddUserCert(X509Certificate* cert) { 33 // This method is only used by the content SSLAddCertHandler which is 34 // never used on Android. 35 NOTIMPLEMENTED(); 36 return ERR_NOT_IMPLEMENTED; 37 } 38 OnAndroidKeyStoreChanged()39void CertDatabase::OnAndroidKeyStoreChanged() { 40 NotifyObserversOfCertAdded(NULL); 41 } 42 OnAndroidKeyChainChanged()43void CertDatabase::OnAndroidKeyChainChanged() { 44 observer_list_->Notify(&Observer::OnCACertChanged, 45 scoped_refptr<X509Certificate>()); 46 } 47 48 } // namespace net 49