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

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: Flattened components/cert_database folders. Created 6 years, 1 month 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..be1adfb166344793935f58676b2d7f543170cd85 100644
--- a/chrome/browser/ui/crypto_module_delegate_nss.cc
+++ b/chrome/browser/ui/crypto_module_delegate_nss.cc
@@ -6,18 +6,24 @@
#include "base/basictypes.h"
#include "base/bind.h"
-#include "chrome/browser/net/nss_context.h"
+#include "base/callback.h"
+#include "components/cert_database/cert_database_service_io_part.h"
#include "content/public/browser/browser_thread.h"
+#include "net/cert/nss_cert_database.h"
using content::BrowserThread;
namespace {
-void CreateWithSlot(chrome::CryptoModulePasswordReason reason,
- const net::HostPortPair& server,
- const base::Callback<void(
- scoped_ptr<ChromeNSSCryptoModuleDelegate>)>& callback,
- crypto::ScopedPK11Slot slot) {
+void CreateWithNSSCertDB(
+ chrome::CryptoModulePasswordReason reason,
+ const net::HostPortPair& server,
+ const base::Callback<void(scoped_ptr<ChromeNSSCryptoModuleDelegate>)>&
+ callback,
+ 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 +48,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::Bind(&CreateWithSlot, reason, server, callback);
+ base::Callback<void(net::NSSCertDatabase*)> got_nssdb_callback =
+ base::Bind(&CreateWithNSSCertDB, 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(got_nssdb_callback);
+ if (nssdb)
+ got_nssdb_callback.Run(nssdb);
}
// TODO(mattm): allow choosing which slot to generate and store the key.
« no previous file with comments | « chrome/browser/ui/crypto_module_delegate_nss.h ('k') | chrome/browser/ui/webui/net_internals/net_internals_ui.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698