Index: crypto/rsa_private_key.h |
diff --git a/crypto/rsa_private_key.h b/crypto/rsa_private_key.h |
index 78a660e903e677df2b6211b2a40b73d3bf99ea6f..9ab9c5768c010b7352129efcdd1feb335cb6e35e 100644 |
--- a/crypto/rsa_private_key.h |
+++ b/crypto/rsa_private_key.h |
@@ -180,7 +180,22 @@ class CRYPTO_EXPORT RSAPrivateKey { |
static RSAPrivateKey* CreateFromPrivateKeyInfo( |
const std::vector<uint8>& input); |
-#if defined(USE_NSS_CERTS) |
+#if defined(USE_OPENSSL) |
+ // Create a new instance from an existing EVP_PKEY, taking a |
+ // reference to it. |key| must be an RSA key. Returns NULL on |
+ // failure. |
+ static RSAPrivateKey* CreateFromKey(EVP_PKEY* key); |
+#else |
+ // Create a new instance by referencing an existing private key |
+ // structure. Does not import the key. |
+ static RSAPrivateKey* CreateFromKey(SECKEYPrivateKey* key); |
+#endif |
+ |
+ // TODO(davidben): These functions are used when NSS is the platform key |
+ // store, but they also assume that the internal crypto library is NSS. Split |
+ // out the convenience NSS platform key methods from the logic which expects |
+ // an RSAPrivateKey. See https://crbug.com/478777. |
+#if defined(USE_NSS_CERTS) && !defined(USE_OPENSSL) |
// Create a new random instance in |slot|. Can return NULL if initialization |
// fails. The created key is permanent and is not exportable in plaintext |
// form. |
@@ -194,10 +209,6 @@ class CRYPTO_EXPORT RSAPrivateKey { |
PK11SlotInfo* slot, |
const std::vector<uint8>& input); |
- // Create a new instance by referencing an existing private key |
- // structure. Does not import the key. |
- static RSAPrivateKey* CreateFromKey(SECKEYPrivateKey* key); |
- |
// Import an existing public key, and then search for the private |
// half in the key database. The format of the public key blob is is |
// an X509 SubjectPublicKeyInfo block. This can return NULL if |
@@ -216,13 +227,7 @@ class CRYPTO_EXPORT RSAPrivateKey { |
static RSAPrivateKey* FindFromPublicKeyInfoInSlot( |
const std::vector<uint8>& input, |
PK11SlotInfo* slot); |
-#elif defined(USE_OPENSSL) |
- // Create a new instance from an existing EVP_PKEY, taking a |
- // reference to it. |key| must be an RSA key. Returns NULL on |
- // failure. |
- static RSAPrivateKey* CreateFromKey(EVP_PKEY* key); |
- |
-#endif |
+#endif // USE_NSS_CERTS && !USE_OPENSSL |
#if defined(USE_OPENSSL) |
EVP_PKEY* key() { return key_; } |