This fixes part of bug4252. Bug not in any released version.
}
/**
- * Return the public key that a cetificate certifies. Return NULL if the
- * cert's key is not RSA.
+ * Return a newly allocated copy of the public key that a certificate
+ * certifies. Return NULL if the cert's key is not RSA.
*/
crypto_pk_env_t *
tor_tls_cert_get_key(tor_cert_t *cert)
signed_len = crypto_pk_public_checksig(pk, signed_data, keysize,
(char*)auth + V3_AUTH_BODY_LEN,
authlen - V3_AUTH_BODY_LEN);
+ crypto_free_pk_env(pk);
if (signed_len < 0) {
tor_free(signed_data);
ERR("Signature wasn't valid");