diff options
author | gspencer@google.com <gspencer@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-08 19:46:42 +0000 |
---|---|---|
committer | gspencer@google.com <gspencer@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-08 19:46:42 +0000 |
commit | dd24ffcb6086d6ac46e46353007a80bf9f46831c (patch) | |
tree | 823464c487ef8bbbffbba3009a8ef579803a0c83 /crypto/nss_util.cc | |
parent | 36b70ae13ee2c7051b8ce9b531b2d72da7c1b3cb (diff) | |
download | chromium_src-dd24ffcb6086d6ac46e46353007a80bf9f46831c.zip chromium_src-dd24ffcb6086d6ac46e46353007a80bf9f46831c.tar.gz chromium_src-dd24ffcb6086d6ac46e46353007a80bf9f46831c.tar.bz2 |
Search all slots when looking for a key in NSS
This should make it possible to run on a VM, and still find the private key created for the owner in the software slot.
BUG=chromium-os:15817
TEST=Built an image and tried it on a VM and a device. Both showed restricted users list.
Review URL: http://codereview.chromium.org/7066070
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@88380 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'crypto/nss_util.cc')
-rw-r--r-- | crypto/nss_util.cc | 28 |
1 files changed, 10 insertions, 18 deletions
diff --git a/crypto/nss_util.cc b/crypto/nss_util.cc index 9901e3a..e484abe 100644 --- a/crypto/nss_util.cc +++ b/crypto/nss_util.cc @@ -155,24 +155,6 @@ void UseLocalCacheOfNSSDatabaseIfNFS(const FilePath& database_dir) { #endif // defined(OS_LINUX) } -// A helper class that acquires the SECMOD list read lock while the -// AutoSECMODListReadLock is in scope. -class AutoSECMODListReadLock { - public: - AutoSECMODListReadLock() - : lock_(SECMOD_GetDefaultModuleListLock()) { - SECMOD_GetReadLock(lock_); - } - - ~AutoSECMODListReadLock() { - SECMOD_ReleaseReadLock(lock_); - } - - private: - SECMODListLock* lock_; - DISALLOW_COPY_AND_ASSIGN(AutoSECMODListReadLock); -}; - PK11SlotInfo* FindSlotWithTokenName(const std::string& token_name) { AutoSECMODListReadLock auto_lock; SECMODModuleList* head = SECMOD_GetDefaultModuleList(); @@ -670,6 +652,16 @@ AutoNSSWriteLock::~AutoNSSWriteLock() { lock_->Release(); } } + +AutoSECMODListReadLock::AutoSECMODListReadLock() + : lock_(SECMOD_GetDefaultModuleListLock()) { + SECMOD_GetReadLock(lock_); + } + +AutoSECMODListReadLock::~AutoSECMODListReadLock() { + SECMOD_ReleaseReadLock(lock_); +} + #endif // defined(USE_NSS) #if defined(OS_CHROMEOS) |