fix copy of RSA key from WOLFSSL_EVP_PKEY

This commit is contained in:
Jacob Barthelmeh
2017-04-05 09:25:47 -06:00
parent 32ca91cd2f
commit 1f8df3e403

View File

@ -23601,10 +23601,7 @@ WOLFSSL_RSA* wolfSSL_EVP_PKEY_get1_RSA(WOLFSSL_EVP_PKEY* key)
return NULL; return NULL;
} }
if (key->rsa != NULL) { if (key->type == EVP_PKEY_RSA) {
XMEMCPY(local, key->rsa, sizeof(WOLFSSL_RSA));
}
else if (key->type == EVP_PKEY_RSA) {
if (wolfSSL_RSA_LoadDer(local, (const unsigned char*)key->pkey.ptr, if (wolfSSL_RSA_LoadDer(local, (const unsigned char*)key->pkey.ptr,
key->pkey_sz) != SSL_SUCCESS) { key->pkey_sz) != SSL_SUCCESS) {
/* now try public key */ /* now try public key */
@ -23617,9 +23614,11 @@ WOLFSSL_RSA* wolfSSL_EVP_PKEY_get1_RSA(WOLFSSL_EVP_PKEY* key)
} }
} }
else { else {
WOLFSSL_MSG("WOLFSSL_EVP_PKEY does not hold an RSA key");
wolfSSL_RSA_free(local); wolfSSL_RSA_free(local);
local = NULL; local = NULL;
} }
return local; return local;
} }