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

Unified Diff: crypto/scoped_test_system_nss_key_slot.h

Issue 424523002: Enable system NSS key slot. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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: crypto/scoped_test_system_nss_key_slot.h
diff --git a/crypto/scoped_test_system_nss_key_slot.h b/crypto/scoped_test_system_nss_key_slot.h
index 156504787f21dfe94c199fe110a73bc61758235d..2de1e7654e65a82da5db29f01e87037f058d33f4 100644
--- a/crypto/scoped_test_system_nss_key_slot.h
+++ b/crypto/scoped_test_system_nss_key_slot.h
@@ -9,24 +9,33 @@
#include "base/memory/scoped_ptr.h"
#include "crypto/crypto_export.h"
+// Forward declaration, from <pk11pub.h>
+typedef struct PK11SlotInfoStr PK11SlotInfo;
+
namespace crypto {
class ScopedTestNSSDB;
// Opens a persistent NSS software database in a temporary directory and sets
// the test system slot to the opened database. This helper should be created in
-// tests where no system token is provided by the Chaps module and before
-// InitializeTPMTokenAndSystemSlot is called. Then the opened test database will
+// tests where no system token is provided by the Chaps module.
+// If |skip_tpm_initialization| is true, then the TPM initialization that is
+// usually triggered by InitializeTPMTokenAndSystemSlot is skipped and instead
+// the |slot| is directly exposed through |GetSystemNSSKeySlot| and
+// |IsTPMTokenReady| will return true.
+// If |skip_tpm_initialization| is false, InitializeTPMTokenAndSystemSlot must
+// be called afterwards. Then the opened test database will
// be used and the initialization continues as if Chaps had provided this test
-// database. In particular, the DB will be exposed by |GetSystemNSSKeySlot| and
+// database. Again, the DB will be exposed by |GetSystemNSSKeySlot| and
// |IsTPMTokenReady| will return true.
// At most one instance of this helper must be used at a time.
class CRYPTO_EXPORT_PRIVATE ScopedTestSystemNSSKeySlot {
public:
- explicit ScopedTestSystemNSSKeySlot();
+ explicit ScopedTestSystemNSSKeySlot(bool skip_tpm_initialization);
~ScopedTestSystemNSSKeySlot();
bool ConstructedSuccessfully() const;
+ PK11SlotInfo* slot() const;
private:
scoped_ptr<ScopedTestNSSDB> test_db_;

Powered by Google App Engine
This is Rietveld 408576698