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

Unified Diff: chrome/browser/chromeos/platform_keys/platform_keys_nss.cc

Issue 306433003: enterprise.platformKeys: Support the publicExponent parameter. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 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/chromeos/platform_keys/platform_keys_nss.cc
diff --git a/chrome/browser/chromeos/platform_keys/platform_keys_nss.cc b/chrome/browser/chromeos/platform_keys/platform_keys_nss.cc
index 5493e181674be925363dc23b78c39d098cc63d9a..da6a7f1c0ebf651747b70aa56664dc2c5b121be4 100644
--- a/chrome/browser/chromeos/platform_keys/platform_keys_nss.cc
+++ b/chrome/browser/chromeos/platform_keys/platform_keys_nss.cc
@@ -126,6 +126,7 @@ void GetCertDatabase(const std::string& token_id,
class GenerateRSAKeyState : public NSSOperationState {
public:
GenerateRSAKeyState(unsigned int modulus_length,
+ unsigned long public_exponent,
const GenerateKeyCallback& callback);
virtual ~GenerateRSAKeyState() {}
@@ -141,7 +142,8 @@ class GenerateRSAKeyState : public NSSOperationState {
from, base::Bind(callback_, public_key_spki_der, error_message));
}
- unsigned int modulus_length_;
+ const unsigned int modulus_length_;
+ const long public_exponent_;
private:
// Must be called on origin thread, use CallBack() therefore.
@@ -167,8 +169,8 @@ class SignState : public NSSOperationState {
from, base::Bind(callback_, signature, error_message));
}
- std::string public_key_;
- std::string data_;
+ const std::string public_key_;
+ const std::string data_;
private:
// Must be called on origin thread, use CallBack() therefore.
@@ -252,8 +254,11 @@ NSSOperationState::NSSOperationState()
}
GenerateRSAKeyState::GenerateRSAKeyState(unsigned int modulus_length,
+ unsigned long public_exponent,
const GenerateKeyCallback& callback)
- : modulus_length_(modulus_length), callback_(callback) {
+ : modulus_length_(modulus_length),
+ public_exponent_(public_exponent),
+ callback_(callback) {
}
SignState::SignState(const std::string& public_key,
@@ -283,8 +288,8 @@ RemoveCertificateState::RemoveCertificateState(
// GenerateRSAKeyWithDB().
void GenerateRSAKeyOnWorkerThread(scoped_ptr<GenerateRSAKeyState> state) {
scoped_ptr<crypto::RSAPrivateKey> rsa_key(
- crypto::RSAPrivateKey::CreateSensitive(state->slot_.get(),
- state->modulus_length_));
+ crypto::RSAPrivateKey::CreateSensitive(
+ state->slot_.get(), state->modulus_length_, state->public_exponent_));
if (!rsa_key) {
LOG(ERROR) << "Couldn't create key.";
state->OnError(FROM_HERE, kErrorInternal);
@@ -470,11 +475,12 @@ void RemoveCertificateWithDB(scoped_ptr<RemoveCertificateState> state,
void GenerateRSAKey(const std::string& token_id,
unsigned int modulus_length,
+ unsigned long public_exponent,
const GenerateKeyCallback& callback,
Profile* profile) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
scoped_ptr<GenerateRSAKeyState> state(
- new GenerateRSAKeyState(modulus_length, callback));
+ new GenerateRSAKeyState(modulus_length, public_exponent, callback));
if (modulus_length > kMaxRSAModulusLength) {
state->OnError(FROM_HERE, kErrorAlgorithmNotSupported);

Powered by Google App Engine
This is Rietveld 408576698