From d03674af6f2a66bb6d94f5a50871301c8650522d Mon Sep 17 00:00:00 2001 From: JerryDevis Date: Wed, 5 Jan 2022 20:55:21 +0800 Subject: [PATCH 12/23] FAPI: Fixed memory leak when ifapi_get_certificates failed Signed-off-by: JerryDevis --- src/tss2-fapi/fapi_util.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tss2-fapi/fapi_util.c b/src/tss2-fapi/fapi_util.c index cd4e0979..f64c4e8b 100644 --- a/src/tss2-fapi/fapi_util.c +++ b/src/tss2-fapi/fapi_util.c @@ -4328,7 +4328,7 @@ ifapi_get_certificates( context->nv_cmd.nv_object.misc.nv.public.nvPublic.attributes = TPMA_NV_NO_DA; r = ifapi_keystore_load_async(&context->keystore, &context->io, "/HS"); - return_if_error2(r, "Could not open hierarchy /HS"); + goto_if_error_reset_state(r, "Could not open hierarchy /HS", error); fallthrough; @@ -4352,7 +4352,7 @@ ifapi_get_certificates( context->session2 = ESYS_TR_NONE; context->nv_cmd.nv_read_state = NV_READ_INIT; memset(&context->nv_cmd.nv_object, 0, sizeof(IFAPI_OBJECT)); - Esys_Free(context->cmd.Provision.nvPublic); + SAFE_FREE(context->cmd.Provision.nvPublic); fallthrough; statecase(context->get_cert_state, GET_CERT_READ_CERT); @@ -4382,7 +4382,7 @@ ifapi_get_certificates( } error: - SAFE_FREE(context->cmd.Provision.capabilityData); + SAFE_FREE(context->cmd.Provision.nvPublic); SAFE_FREE(context->cmd.Provision.capabilityData); ifapi_cleanup_ifapi_object(&context->nv_cmd.auth_object); ifapi_free_object_list(*cert_list); -- 2.34.3