summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/manager/client-capi/ckmc-manager.cpp2
-rw-r--r--src/manager/client-capi/ckmc-type.cpp10
2 files changed, 6 insertions, 6 deletions
diff --git a/src/manager/client-capi/ckmc-manager.cpp b/src/manager/client-capi/ckmc-manager.cpp
index 7f337a1e..1cc412ba 100644
--- a/src/manager/client-capi/ckmc-manager.cpp
+++ b/src/manager/client-capi/ckmc-manager.cpp
@@ -445,7 +445,7 @@ int ckmc_get_pkcs12(const char *alias, const char *key_password,
if (ret != CKMC_ERROR_NONE) {
ckmc_key_free(private_key);
ckmc_cert_free(cert);
- ckmc_cert_list_free(ca_cert_list);
+ ckmc_cert_list_all_free(ca_cert_list);
}
return ret;
diff --git a/src/manager/client-capi/ckmc-type.cpp b/src/manager/client-capi/ckmc-type.cpp
index 75fde1c0..cadc56d9 100644
--- a/src/manager/client-capi/ckmc-type.cpp
+++ b/src/manager/client-capi/ckmc-type.cpp
@@ -230,8 +230,7 @@ int ckmc_load_cert_from_file(const char *file_path, ckmc_cert_s **cert)
int ret = _ckmc_load_cert_from_x509(pcert, cert);
- if (ret != CKMC_ERROR_NONE)
- X509_free(pcert);
+ X509_free(pcert);
return ret;
}
@@ -417,8 +416,9 @@ int ckmc_load_from_pkcs12_file(const char *file_path, const char *passphrase,
ckmc_cert_list_s *tmpCertList = NULL;
while ((popedCert = sk_X509_pop(ca)) != NULL) {
- if ((tmpRet = _ckmc_load_cert_from_x509(popedCert,
- &popedCkmCert)) != CKMC_ERROR_NONE)
+ tmpRet = _ckmc_load_cert_from_x509(popedCert, &popedCkmCert);
+ X509_free(popedCert);
+ if (tmpRet != CKMC_ERROR_NONE)
return CKMC_ERROR_OUT_OF_MEMORY;
if (tmpCertList == NULL) { // first
@@ -502,7 +502,7 @@ void ckmc_pkcs12_free(ckmc_pkcs12_s *pkcs12)
ckmc_key_free(pkcs12->priv_key);
ckmc_cert_free(pkcs12->cert);
- ckmc_cert_list_free(pkcs12->ca_chain);
+ ckmc_cert_list_all_free(pkcs12->ca_chain);
free(pkcs12);
}