| Index: net/ssl/ssl_platform_key_nss.cc
|
| diff --git a/net/ssl/ssl_platform_key_nss.cc b/net/ssl/ssl_platform_key_nss.cc
|
| index d08bd98b0f2f69f9c685aefb6c1d4e7c590e515e..22a6eec487dd0ca293fb54039581cdf758ff0b25 100644
|
| --- a/net/ssl/ssl_platform_key_nss.cc
|
| +++ b/net/ssl/ssl_platform_key_nss.cc
|
| @@ -19,6 +19,7 @@
|
| #include "crypto/scoped_nss_types.h"
|
| #include "crypto/scoped_openssl_types.h"
|
| #include "net/cert/x509_certificate.h"
|
| +#include "net/ssl/client_key_store.h"
|
| #include "net/ssl/ssl_private_key.h"
|
| #include "net/ssl/threaded_ssl_private_key.h"
|
|
|
| @@ -158,8 +159,10 @@ scoped_ptr<SSLPrivateKey> FetchClientCertPrivateKey(
|
| scoped_refptr<base::SequencedTaskRunner> task_runner) {
|
| crypto::ScopedSECKEYPrivateKey key(
|
| PK11_FindKeyByAnyCert(certificate->os_cert_handle(), nullptr));
|
| - if (!key)
|
| - return nullptr;
|
| + if (!key) {
|
| + return ClientKeyStore::GetInstance()->FetchClientCertPrivateKey(
|
| + *certificate);
|
| + }
|
|
|
| KeyType nss_type = SECKEY_GetPrivateKeyType(key.get());
|
| SSLPrivateKey::Type type;
|
|
|