From patchwork Fri Dec 22 18:12:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1879740 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=gmx.de header.i=xypron.glpk@gmx.de header.a=rsa-sha256 header.s=s31663417 header.b=YUaZqRVF; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org) Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4Sxb5K44w6z1ypX for ; Sat, 23 Dec 2023 05:13:25 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 0271486E7E; Fri, 22 Dec 2023 19:13:22 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; secure) header.d=gmx.de header.i=xypron.glpk@gmx.de header.b="YUaZqRVF"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id F0471871DA; Fri, 22 Dec 2023 19:13:20 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 14ECD81EC8 for ; Fri, 22 Dec 2023 19:13:19 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1703268797; x=1703873597; i=xypron.glpk@gmx.de; bh=t+Hw99GpbOaH+IqfjOh1J9m6jBli/YFy+9lUpSmkRSA=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date; b=YUaZqRVFIXy7aeEwZL6QhK/WLynLQ5WVSR3qYAgZdGs+13KSF/LxwjOTHwG423/s 2fH3o6oBJGlCY6UQNs1eH652vVn9k3ZFj9nu+5OKfYzWWPa1p0tj8w6elpa4+74ef qZEROHhBxTiQ+6qylD+5kTvLMH5mSSvR70HSOjuMd3qIbJ3JA+2kgiocO5tSOR64A p610gHiS14orsPfaXknNBRIPr+HjBs0poiFy4H/FeAn0nNp6UPnlPDFTm0NH5rl85 7StNLje8r6JPcOTLm1c2CUmgKvXbbcZ8GPBgIQ/SuPDWzfJyi2EE5s9ka+8uSwL0C 4mvnKOGAoEDZGCImIQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from x13s.fritz.box ([178.202.40.247]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mel3t-1qg29o0QwH-00alfP; Fri, 22 Dec 2023 19:13:17 +0100 From: Heinrich Schuchardt To: Simon Glass Cc: Ilias Apalodimas , u-boot@lists.denx.de, Christian Gmeiner , Heinrich Schuchardt Subject: [PATCH 1/1] lib: smbios: verify_checksum() is duplicate Date: Fri, 22 Dec 2023 19:12:50 +0100 Message-ID: <20231222181250.49764-1-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-Provags-ID: V03:K1:W7ySwvHTUe3RA6JqpzhJvX0abshU/lpLRZkQl9vpCQvl3e268tC eFdKT4y3PZ5FtQQCweeyVZRLCmHz+yAHX5M3hrhdmoFmcVTx3asvHkxGTdhu8btbvE0jRFa FE1HPT16XWmA2H2a43Z5MlTi7dGgELu5Lnoe8irISQCRHy0bbr1f3YJAzfhnyAe2IYVUU2I +6eck1SG6Mj2KKcLyKWVQ== UI-OutboundReport: notjunk:1;M01:P0:/qaiXziFlzQ=;7c4uSDyJQsoikg+xhb5oi9hs6LF QsrIPqWHBcYk53+vRsi70eWUralvvm60/54f8eIjrL1hnbNJ8wfWE0Dclk/D2U2eeo4Dr81Ji KKRM7qfECc6fdN8rc6Vh3RbarOecHaiI2rcd1b/SBObZh5QzNBbJ0kneA6E5gbLCmAqOvsCn+ /EQrXl9KYazOfcGTsBlWKIYwQVaqUjIYTNeMgHHWDMylWos8rvEjQ5c1tmYqzs06QJa6tq/Q2 2qbxSYO+EfB7DUwQQusXc8YqvtAHjCxik36GtzqUTkOv5uY2wWxGS0XsAdgh+kl9mwaw2RQtt yRYlkaSNUxzzZJFvSFzteZSlA9tCtGLE/1lCPiaXcTLOyt5pxetDm0deDG0MR9JNKhYLcY4aY iYV0j4K8aD8UHsNZdUX6Ej7Lovk+RsifYFFIlIpO/Cndb3HFFgR/AzrDX9h15oF6fg2uFzkEt 41ji9UkWbLV91HJRG2+x0UuvTNYByppRpPogCbHPdTVZv8Nb3EMM0FhKvhClWTzj9fw1/V9CP fVMdOPiDrTT4Y0O5aFlCi1r0V+fCq1YAuh0CTHuzvEMOnFukiM7JOIJ9T6380w5A/PLHH8eUF ZNIwAAjvxKB8Ulz/Nf64iLztNHItPkjT3LJKx4ycQr3o5RtxOesXuKknXPYz55zsJsfOmyBxq McAr4RWPjNIXmjAad8kvsugNBcDmwBiWzLAR3Zv46w2Ysgo2JpjXRTRET0+ys9GgaacQAji5c PMD9WV2ceyxmcWs7zFVn8HYHdvHE0xNv8YC2qapTxHgtAgy+mFPa0OOOsnBr63PwQ21MYM4Bg Je5fohks9a+89jHNiczXdUxOlS86vrLxqchzx9s5kTWJFp4nHc9124B2V9MG484Rj8IExggHF PV4B39s8AIPbtl0jEUL+OmzS+qpoWF5V9AWNB+ZRtd4N5RyesmRXhz1M+aSWz+IdBOxlYcjFt gX5EHw== X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.8 at phobos.denx.de X-Virus-Status: Clean The function verify_checksum() duplicates what table_compute_checksum() does. Replace it. Fixes: 415eab0655a8 ("smbios: add parsing API") Signed-off-by: Heinrich Schuchardt Reviewed-by: Simon Glass Reviewed-by: Ilias Apalodimas --- lib/smbios-parser.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) -- 2.43.0 diff --git a/lib/smbios-parser.c b/lib/smbios-parser.c index f4de350e6e..a29a06398d 100644 --- a/lib/smbios-parser.c +++ b/lib/smbios-parser.c @@ -5,23 +5,9 @@ #define LOG_CATEGORY LOGC_BOOT +#include #include -static inline int verify_checksum(const struct smbios_entry *e) -{ - /* - * Checksums for SMBIOS tables are calculated to have a value, so that - * the sum over all bytes yields zero (using unsigned 8 bit arithmetic). - */ - u8 *byte = (u8 *)e; - u8 sum = 0; - - for (int i = 0; i < e->length; i++) - sum += byte[i]; - - return sum; -} - const struct smbios_entry *smbios_entry(u64 address, u32 size) { const struct smbios_entry *entry = (struct smbios_entry *)(uintptr_t)address; @@ -32,7 +18,7 @@ const struct smbios_entry *smbios_entry(u64 address, u32 size) if (memcmp(entry->anchor, "_SM_", 4)) return NULL; - if (verify_checksum(entry)) + if (table_compute_checksum(entry, entry->length)) return NULL; return entry;