summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/certificate_chain.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/certificate_chain.cc b/src/certificate_chain.cc
index 51f2ca68..449dba89 100644
--- a/src/certificate_chain.cc
+++ b/src/certificate_chain.cc
@@ -471,16 +471,18 @@ CertificateChain::chain_valid(List const & chain, string* error) const
}
int const v = X509_verify_cert (ctx);
- X509_STORE_CTX_free (ctx);
if (v != 1) {
X509_STORE_free (store);
if (error) {
*error = X509_verify_cert_error_string(X509_STORE_CTX_get_error(ctx));
}
+ X509_STORE_CTX_free(ctx);
return false;
}
+ X509_STORE_CTX_free(ctx);
+
/* I don't know why OpenSSL doesn't check this stuff
in verify_cert, but without these checks the
certificates_validation8 test fails.