From f03a243f4f1e249a0f4d96bc5722a44953cad72e Mon Sep 17 00:00:00 2001 From: JerryDevis <857869045@qq.com> Date: Sun, 9 Jan 2022 18:44:49 +0800 Subject: [PATCH 17/23] FAPI: Clean up memory when Fapi_GetEsysBlob_Async failed Signed-off-by: JerryDevis <857869045@qq.com> --- src/tss2-fapi/api/Fapi_GetEsysBlob.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/tss2-fapi/api/Fapi_GetEsysBlob.c b/src/tss2-fapi/api/Fapi_GetEsysBlob.c index b152ae3a..db67e2e4 100644 --- a/src/tss2-fapi/api/Fapi_GetEsysBlob.c +++ b/src/tss2-fapi/api/Fapi_GetEsysBlob.c @@ -157,8 +157,8 @@ Fapi_GetEsysBlob_Async( authObject->objectType = IFAPI_OBJ_NONE; /* Check whether TCTI and ESYS are initialized */ - return_if_null(context->esys, "Command can't be executed in none TPM mode.", - TSS2_FAPI_RC_NO_TPM); + goto_if_null(context->esys, "Command can't be executed in none TPM mode.", + TSS2_FAPI_RC_NO_TPM, error_cleanup); /* If the async state automata of FAPI shall be tested, then we must not set the timeouts of ESYS to blocking mode. @@ -167,12 +167,12 @@ Fapi_GetEsysBlob_Async( to block until a result is available. */ #ifndef TEST_FAPI_ASYNC r = Esys_SetTimeout(context->esys, TSS2_TCTI_TIMEOUT_BLOCK); - return_if_error_reset_state(r, "Set Timeout to blocking"); + goto_if_error_reset_state(r, "Set Timeout to blocking", error_cleanup); #endif /* TEST_FAPI_ASYNC */ /* A TPM session will be created to enable object authorization */ r = ifapi_session_init(context); - return_if_error(r, "Initialize GetEsysBlob"); + goto_if_error(r, "Initialize GetEsysBlob", error_cleanup); context->state = GET_ESYS_BLOB_GET_FILE; -- 2.34.3