| Index: net/android/keystore.cc
|
| diff --git a/net/android/keystore.cc b/net/android/keystore.cc
|
| index de36c95489df6885672bca09012ea15977ab9c94..3a2948a71730b47ec6758ad7d75f478bf903f6a9 100644
|
| --- a/net/android/keystore.cc
|
| +++ b/net/android/keystore.cc
|
| @@ -124,7 +124,7 @@ PrivateKeyType GetPrivateKeyType(jobject private_key_ref) {
|
| return static_cast<PrivateKeyType>(type);
|
| }
|
|
|
| -EVP_PKEY* GetOpenSSLSystemHandleForPrivateKey(jobject private_key_ref) {
|
| +AndroidEVP_PKEY* GetOpenSSLSystemHandleForPrivateKey(jobject private_key_ref) {
|
| JNIEnv* env = AttachCurrentThread();
|
| // Note: the pointer is passed as a jint here because that's how it
|
| // is stored in the Java object. Java doesn't have a primitive type
|
| @@ -138,7 +138,18 @@ EVP_PKEY* GetOpenSSLSystemHandleForPrivateKey(jobject private_key_ref) {
|
| env,
|
| GetKeyStore(private_key_ref).obj(),
|
| private_key_ref);
|
| - return reinterpret_cast<EVP_PKEY*>(pkey);
|
| + return reinterpret_cast<AndroidEVP_PKEY*>(pkey);
|
| +}
|
| +
|
| +ScopedJavaLocalRef<jobject> GetOpenSSLEngineForPrivateKey(
|
| + jobject private_key_ref) {
|
| + JNIEnv* env = AttachCurrentThread();
|
| + ScopedJavaLocalRef<jobject> engine =
|
| + Java_AndroidKeyStore_getOpenSSLEngineForPrivateKey(
|
| + env,
|
| + GetKeyStore(private_key_ref).obj(),
|
| + private_key_ref);
|
| + return engine;
|
| }
|
|
|
| void ReleaseKey(jobject private_key_ref) {
|
|
|