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

Unified Diff: chrome/browser/ui/crypto_module_delegate_nss.cc

Issue 419013003: Replace c/b/nss_context by a KeyedService. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase, format. Created 6 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/crypto_module_delegate_nss.cc
diff --git a/chrome/browser/ui/crypto_module_delegate_nss.cc b/chrome/browser/ui/crypto_module_delegate_nss.cc
index 5812e5491eafe72163eea83e005b3faaa032ba66..0950596ffe55416e79938bee0c28552d0c238b45 100644
--- a/chrome/browser/ui/crypto_module_delegate_nss.cc
+++ b/chrome/browser/ui/crypto_module_delegate_nss.cc
@@ -6,8 +6,10 @@
#include "base/basictypes.h"
#include "base/bind.h"
-#include "chrome/browser/net/nss_context.h"
+#include "base/callback.h"
+#include "components/cert_database/public/cert_database_service_io_part.h"
#include "content/public/browser/browser_thread.h"
+#include "net/cert/nss_cert_database.h"
using content::BrowserThread;
@@ -17,7 +19,10 @@ void CreateWithSlot(chrome::CryptoModulePasswordReason reason,
const net::HostPortPair& server,
const base::Callback<void(
scoped_ptr<ChromeNSSCryptoModuleDelegate>)>& callback,
- crypto::ScopedPK11Slot slot) {
+ net::NSSCertDatabase* nss_cert_db) {
+ crypto::ScopedPK11Slot slot;
+ if (nss_cert_db)
+ slot = nss_cert_db->GetPrivateSlot();
if (!slot) {
callback.Run(scoped_ptr<ChromeNSSCryptoModuleDelegate>());
return;
@@ -42,22 +47,22 @@ ChromeNSSCryptoModuleDelegate::ChromeNSSCryptoModuleDelegate(
ChromeNSSCryptoModuleDelegate::~ChromeNSSCryptoModuleDelegate() {}
// static
-void ChromeNSSCryptoModuleDelegate::CreateForResourceContext(
+void ChromeNSSCryptoModuleDelegate::CreateForCertDatabase(
chrome::CryptoModulePasswordReason reason,
const net::HostPortPair& server,
- content::ResourceContext* context,
+ cert_database::CertDatabaseServiceIOPart* cert_db_io,
const base::Callback<void(scoped_ptr<ChromeNSSCryptoModuleDelegate>)>&
callback) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
DCHECK(!callback.is_null());
- base::Callback<void(crypto::ScopedPK11Slot)> get_slot_callback =
+ base::Callback<void(net::NSSCertDatabase*)> get_nssdb_callback =
base::Bind(&CreateWithSlot, reason, server, callback);
- crypto::ScopedPK11Slot slot =
- GetPrivateNSSKeySlotForResourceContext(context, get_slot_callback);
- if (slot)
- get_slot_callback.Run(slot.Pass());
+ net::NSSCertDatabase* nssdb =
+ cert_db_io->GetNSSCertDatabase(get_nssdb_callback);
+ if (nssdb)
+ get_nssdb_callback.Run(nssdb);
}
// TODO(mattm): allow choosing which slot to generate and store the key.

Powered by Google App Engine
This is Rietveld 408576698