From patchwork Thu May 7 00:13:18 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Patrick Wildt X-Patchwork-Id: 245257 List-Id: U-Boot discussion From: patrick at blueri.se (Patrick Wildt) Date: Thu, 7 May 2020 02:13:18 +0200 Subject: efi_loader: efi_variable_parse_signature() returns NULL on error Message-ID: <20200507001318.GA6451@nox.fritz.box> efi_variable_parse_signature() returns NULL on error, so IS_NULL() is an incorrect check. The goto err leads to pkcs7_free_message(), which works fine on a NULL ptr. Signed-off-by: Patrick Wildt Reviewed-by: AKASHI Takahiro Reviewed-by: AKASHI Takahiro diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c index 58f8fae358..c5fe896de2 100644 --- a/lib/efi_loader/efi_variable.c +++ b/lib/efi_loader/efi_variable.c @@ -519,9 +519,8 @@ static efi_status_t efi_variable_authenticate(u16 *variable, var_sig = efi_variable_parse_signature(auth->auth_info.cert_data, auth->auth_info.hdr.dwLength - sizeof(auth->auth_info)); - if (IS_ERR(var_sig)) { + if (!var_sig) { debug("Parsing variable's signature failed\n"); - var_sig = NULL; goto err; }