From patchwork Wed Jul 8 16:39:41 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Biggers X-Patchwork-Id: 11651905 X-Patchwork-Delegate: herbert@gondor.apana.org.au Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0294D13B4 for ; Wed, 8 Jul 2020 16:40:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id D5208207D0 for ; Wed, 8 Jul 2020 16:40:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1594226437; bh=qcv6XOwJonmyIIS3hjVNF+gYz6JEyXz2OkaZsFvK0+E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=h46JxvPpBojsdpL56l0gPswPKrkhuv4fabFJgxmM6u4HcM20q4tJ/gJVGuaxn/wg2 cTwdUXWOXZ3C+rSNyHBYwz1A2AZJ535bW4bm+lTxL5Zj5ipYGfagIUhAQkrIRWhj+8 xv8+fpqD7DlQrCLGq7n3VifeIKsosqYax1iLGg6g= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730730AbgGHQkf (ORCPT ); Wed, 8 Jul 2020 12:40:35 -0400 Received: from mail.kernel.org ([198.145.29.99]:54940 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730729AbgGHQkd (ORCPT ); Wed, 8 Jul 2020 12:40:33 -0400 Received: from sol.hsd1.ca.comcast.net (c-107-3-166-239.hsd1.ca.comcast.net [107.3.166.239]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id D1F2620836; Wed, 8 Jul 2020 16:40:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1594226433; bh=qcv6XOwJonmyIIS3hjVNF+gYz6JEyXz2OkaZsFvK0+E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HySN+awD9iBiPt4DP2uFwQXfuhPkMMg7/4nd8JIZ8wj+hRKakcoLISFVjITcfaLkq zJ+HqsMsQeeWUelDfYEPbRW+vGMX/x6IS3vivCe2qiDb/XgXJrvLaxrlVo9zpAFHWh t6FBsrdGgpnaUZBm/2kdmslH53WpA6zHEsQsDha4= From: Eric Biggers To: linux-crypto@vger.kernel.org, Herbert Xu Cc: linux-efi@vger.kernel.org, Ard Biesheuvel , Hans de Goede Subject: [PATCH v2 3/5] efi: use sha256() instead of open coding Date: Wed, 8 Jul 2020 09:39:41 -0700 Message-Id: <20200708163943.52071-4-ebiggers@kernel.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200708163943.52071-1-ebiggers@kernel.org> References: <20200708163943.52071-1-ebiggers@kernel.org> MIME-Version: 1.0 Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org From: Eric Biggers Now that there's a function that calculates the SHA-256 digest of a buffer in one step, use it instead of sha256_init() + sha256_update() + sha256_final(). Reviewed-by: Ard Biesheuvel Tested-by: Hans de Goede Cc: linux-efi@vger.kernel.org Cc: Ard Biesheuvel Cc: Hans de Goede Signed-off-by: Eric Biggers --- drivers/firmware/efi/embedded-firmware.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/drivers/firmware/efi/embedded-firmware.c b/drivers/firmware/efi/embedded-firmware.c index a1b199de9006..e97a9c9d010c 100644 --- a/drivers/firmware/efi/embedded-firmware.c +++ b/drivers/firmware/efi/embedded-firmware.c @@ -37,9 +37,8 @@ static const struct dmi_system_id * const embedded_fw_table[] = { static int __init efi_check_md_for_embedded_firmware( efi_memory_desc_t *md, const struct efi_embedded_fw_desc *desc) { - struct sha256_state sctx; struct efi_embedded_fw *fw; - u8 sha256[32]; + u8 hash[32]; u64 i, size; u8 *map; @@ -54,10 +53,8 @@ static int __init efi_check_md_for_embedded_firmware( if (memcmp(map + i, desc->prefix, EFI_EMBEDDED_FW_PREFIX_LEN)) continue; - sha256_init(&sctx); - sha256_update(&sctx, map + i, desc->length); - sha256_final(&sctx, sha256); - if (memcmp(sha256, desc->sha256, 32) == 0) + sha256(map + i, desc->length, hash); + if (memcmp(hash, desc->sha256, 32) == 0) break; } if ((i + desc->length) > size) {