Commit 29c9675b authored by Nick Mathewson's avatar Nick Mathewson 🌉
Browse files

Fix memory leak in crypto_pk_asn1_decode_private.

(Deep, deep thanks to Taylor for reminding me to test this!)
parent ab2e66cc
...@@ -590,6 +590,7 @@ crypto_pk_asn1_decode_private(const char *str, size_t len, int max_bits) ...@@ -590,6 +590,7 @@ crypto_pk_asn1_decode_private(const char *str, size_t len, int max_bits)
if (max_bits >= 0 && rsa->n && BN_num_bits(rsa->n) > max_bits) { if (max_bits >= 0 && rsa->n && BN_num_bits(rsa->n) > max_bits) {
#endif #endif
log_info(LD_CRYPTO, "Private key longer than expected."); log_info(LD_CRYPTO, "Private key longer than expected.");
RSA_free(rsa);
return NULL; return NULL;
} }
crypto_pk_t *result = crypto_new_pk_from_openssl_rsa_(rsa); crypto_pk_t *result = crypto_new_pk_from_openssl_rsa_(rsa);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment