From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.0 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,UNWANTED_LANGUAGE_BODY, USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EB018C433F5 for ; Sun, 12 Sep 2021 19:17:09 +0000 (UTC) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 70E8260EFE for ; Sun, 12 Sep 2021 19:17:09 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 70E8260EFE Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id F3C8683952; Sun, 12 Sep 2021 21:17:06 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none 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 (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="Abg2tsrB"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 4752B83852; Sun, 12 Sep 2021 21:17:05 +0200 (CEST) Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (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 D36F283952 for ; Sun, 12 Sep 2021 21:16:42 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none 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.net; s=badeba3b8450; t=1631474201; bh=Z4cIrzVrnKxlEpK9yDJeP+8081G35fsXzEkxJfmChqI=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=Abg2tsrB2QuAlvWuMitCKtOnKYgGLf3ZB4SUCqB3dM/aP7OkF9Hou27FX9GP94dKC Zx5en7IiUZ+ezb4dQ4Y/X/szC6fiBLPoaumRAk2E7OX/9R4lLd2U78mNOmcovlviWV ijb80YvaDD4UoWrmgOlFN0c15A4Ttn3uPDt6Figw= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.178.189] ([46.253.247.65]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MWici-1mReiH0ADg-00X3FA; Sun, 12 Sep 2021 21:16:41 +0200 Subject: Re: [PATCH 3/4] efi_loader: simplify efi_sigstore_parse_sigdb() To: Ilias Apalodimas Cc: u-boot@lists.denx.de, AKASHI Takahiro , Sughosh Ganu , Masahisa Kojima , Alexander Graf References: <20210911072832.16991-1-xypron.glpk@gmx.de> <20210911072832.16991-4-xypron.glpk@gmx.de> From: Heinrich Schuchardt Message-ID: Date: Sun, 12 Sep 2021 21:16:37 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:oaqZnB9/u1ytDfjIImXwKVrw+w5P7B43fNip3D0gm4Zc/5T3I+9 y7YjpGMUdaM93KyEmzjV+r7jsJNUJ7qJeBBui7/mPcZH17NqTthxOndXFgNMFVRfl01WmnC WX66ssfEDGFsoqUA1+4vU9ubefytFlmgIpBisnLc9sDMs+GTttoxj8bN3Ucf/+K+0XiBE9c 0oOXFUrCIqAELRtobpL1g== X-UI-Out-Filterresults: notjunk:1;V03:K0:EWuWOrkCXE0=:xiqY4RcsO5RDmk+KPZcE4P 9slqrLWNGmixQTe40MScdPd5+vnNR4CKcJqfpQg0mjqonadJZ5WxEvWx7evHCXPdIFAskCepW vMAz1kGCV4r2m8UVf2m3ueARNY5KaTlokYmNBedX5u6W+MP+KEAb2eO+DfVELnxeFEGSjbUxH 1U1rU9U707am1gGXq7/U1tjzINFSFwXVp/ZbUEqVUNMkxj6wyVcFq8drkEjm5Gw5T9LX17WZs 1quAo8kiGvnCt5+Ed/vU64bwX53DxBtItSkwejm04keiDpZbet09/nlVGRN/NmJpRvhfSkN6d FKlPfbK3nqM03JsyB94NjdvTNNPUsPupuQnwt4CuAWDpXsx5hSZkecchowlyshcTwiymrqhW7 QacUWwAJK7NVoAnmvmFefy1gaLOZhmFwCdQ6+/f7UOw28jbzkF6KC8eUmGjx7BRyH9hU8twYD GNFlgCBSsfAFwOqtAIgRdEUe0RxVsMVkHx7vWLom5FxMvCvbd7LiaslftnrJrd0ompvoAZ8VY ep1vopoYazjdA2ELNgHuvgQI10mlF8M94Ec/jfsMxREvGozky/VzDH5K9ZPOxDZMU+LdI/Jux pMYucpcY2XCGqr1t/iXxNMCnSyj++ODvylXQ797Zwln1wScHbwKWqT47yAp0YtgxrvPFKfzUH aRowcn6C54slqlVY8KCInU6OFhDiXj/CkDbmwUAScOLzU2mh1Ioe9xTGNjKVPghFZP/98MZhl StP8zyGDRFBV4tt7HXMGbd9H4U34/tTD8hXehyBELZW0+D/OkYG0riJg0NFdYOaKggzObwkuk R8BGOnxCHv6iTZt61zAn86uR/h00z6rh0j+er95lm/pOzlR0xI9bmW4O5ZEP36se7yk60yiNd 8wu3NYeEK+clMKdGI8tO0z+vxf/KnnkFNb9CjEb1CyVXR7dQ6/lShQj0lv521XRAyKsmfYrb1 Z/fjSV2ctImnsVpSojB9mmjrKL6VipMEjpKfQU7psETTkl9TdouXktcmu7OLdsUzoxFBmuFIx Zn3ZPCmclECWdeOZjX9PUgp/HflnRZsuKi3b1A4/JMyeZkAPZfhOkcJfFBwVSWbFxALGiEEd6 BgHY3hL+Jemu8Q= X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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.2 at phobos.denx.de X-Virus-Status: Clean On 9/11/21 4:25 PM, Ilias Apalodimas wrote: > On Sat, Sep 11, 2021 at 09:28:31AM +0200, Heinrich Schuchardt wrote: >> Simplify efi_sigstore_parse_sigdb() by using existing functions. >> >> Signed-off-by: Heinrich Schuchardt >> --- >> lib/efi_loader/efi_signature.c | 35 ++++++---------------------------= - >> 1 file changed, 6 insertions(+), 29 deletions(-) >> >> diff --git a/lib/efi_loader/efi_signature.c b/lib/efi_loader/efi_signat= ure.c >> index bdd09881fc..b741905a99 100644 >> --- a/lib/efi_loader/efi_signature.c >> +++ b/lib/efi_loader/efi_signature.c >> @@ -7,6 +7,7 @@ >> #include >> #include >> #include >> +#include >> #include >> #include >> #include >> @@ -740,44 +741,20 @@ err: >> */ >> struct efi_signature_store *efi_sigstore_parse_sigdb(u16 *name) >> { >> - struct efi_signature_store *sigstore =3D NULL; >> const efi_guid_t *vendor; >> void *db; >> efi_uintn_t db_size; >> - efi_status_t ret; >> >> - if (!u16_strcmp(name, L"PK") || !u16_strcmp(name, L"KEK")) { >> - vendor =3D &efi_global_variable_guid; >> - } else if (!u16_strcmp(name, L"db") || !u16_strcmp(name, L"dbx")) { >> - vendor =3D &efi_guid_image_security_database; >> - } else { >> + vendor =3D efi_auth_var_get_guid(name); >> + if (!vendor) { >> EFI_PRINT("unknown signature database, %ls\n", name); >> return NULL; >> } > > efi_auth_var_get_guid() will return &efi_global_variable_guid if the > GUID for the variable name isn't found. Hello Ilias, that is on purpose. In nevedit_efi we need a default GUID. I want to reuse the same function there in future. Best regards Heinrich > >> >> - /* retrieve variable data */ >> - db_size =3D 0; >> - ret =3D EFI_CALL(efi_get_variable(name, vendor, NULL, &db_size, NULL)= ); >> - if (ret =3D=3D EFI_NOT_FOUND) { >> - EFI_PRINT("variable, %ls, not found\n", name); >> - sigstore =3D calloc(sizeof(*sigstore), 1); >> - return sigstore; >> - } else if (ret !=3D EFI_BUFFER_TOO_SMALL) { >> - EFI_PRINT("Getting variable, %ls, failed\n", name); >> - return NULL; >> - } >> - >> - db =3D malloc(db_size); >> + db =3D efi_get_var(name, vendor, &db_size); >> if (!db) { >> - EFI_PRINT("Out of memory\n"); >> - return NULL; >> - } >> - >> - ret =3D EFI_CALL(efi_get_variable(name, vendor, NULL, &db_size, db)); >> - if (ret !=3D EFI_SUCCESS) { >> - EFI_PRINT("Getting variable, %ls, failed\n", name); >> - free(db); >> - return NULL; >> + EFI_PRINT("variable, %ls, not found\n", name); >> + return calloc(sizeof(struct efi_signature_store), 1); >> } >> >> return efi_build_signature_store(db, db_size); >> -- >> 2.30.2 >>