From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by mx.groups.io with SMTP id smtpd.web09.17279.1627893362436267863 for ; Mon, 02 Aug 2021 01:36:02 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=D9HbRgpU; spf=pass (domain: kernel.org, ip: 198.145.29.99, mailfrom: ardb@kernel.org) Received: by mail.kernel.org (Postfix) with ESMTPSA id 7DCB5610D0 for ; Mon, 2 Aug 2021 08:36:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1627893361; bh=J49hhfbYRtWP7Jt+cX21E9gLoStTFZCwKudWS4N2GjI=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=D9HbRgpUp46+fU7mh9BJM+gfyA5fiXGfNnCXSuFPrazQ0PN22ARyi3g+fWDLF+X7L 5veWWkNReklCZLLtfU1q2CS+UOQ9QNcaCkS/2hH14o6/+6OxfMZUiF+dXICLsjIMiW m7RcHvYpa+Ybi1vXM84VCSGbWGKZ0D50R7IUU3TAXSX6zZxTRg7nYbXjoCy+wESQQ1 q00axHUx00IwQwQDqzBKZvU4m37EcWqd8KvNxDaPzDxlgnIHygY4zidfncJCWgdGVc gCGAmoA6xRcLeL16TWqhPc2472fP+qNEfI0lDh7ZM2kd20jHyAHkxCCnGTzJbXxkaj VrDQuuM0dSgIg== Received: by mail-ot1-f44.google.com with SMTP id a5-20020a05683012c5b029036edcf8f9a6so16858142otq.3 for ; Mon, 02 Aug 2021 01:36:01 -0700 (PDT) X-Gm-Message-State: AOAM530Nb1DUSKya7rNLU4B3x++YdjfHoAraW3DjgmrQHfckgY4Ff7Vi 0TBfIkAhNXEbSvfYrY1zhtjC+bEothm5sgN3Px8= X-Google-Smtp-Source: ABdhPJxwzE/jJx17gWiCWXoE98MLO0gtkuKUN+0U1jMXdx1YkF/BmrE0xbaiAnJg9k6FFuPvninSWuusjUKHak8pW0o= X-Received: by 2002:a9d:5cb:: with SMTP id 69mr10881777otd.90.1627893360749; Mon, 02 Aug 2021 01:36:00 -0700 (PDT) MIME-Version: 1.0 References: <20210730102326.2814466-1-gjb@semihalf.com> <024901d7875c$70220e20$50662a60$@byosoft.com.cn> In-Reply-To: From: "Ard Biesheuvel" Date: Mon, 2 Aug 2021 10:35:51 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: =?UTF-8?B?UmU6IFtlZGsyLWRldmVsXSDlm57lpI06IFtQQVRDSCB2NyAwMC8xMV0gU2VjdXJlIEJvb3QgZGVmYXVsdCBrZXlz?= To: Grzegorz Bernacki Cc: edk2-devel-groups-io , "Liming Gao (Byosoft address)" , Leif Lindholm , Ard Biesheuvel , Samer El-Haj-Mahmoud , Sunny Wang , Marcin Wojtas , upstream@semihalf.com, Jiewen Yao , Jian J Wang , Min Xu , Laszlo Ersek , Sami Mujawar , Andrew Fish , Ray Ni , Jordan Justen , Rebecca Cran , Peter Grehan , Thomas Abraham , Chasel Chiu , Nate DeSimone , Eric Dong , Michael Kinney , "Sun, Zailiang" , "Qian, Yi" , Graeme Gregory , Radoslaw Biernacki , Peter Batard Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, 2 Aug 2021 at 09:27, Grzegorz Bernacki wrote: > > Hi, > > I took the template for function header from: > https://edk2-docs.gitbook.io/edk-ii-c-coding-standards-specification/5_s= ource_files/57_c_programming > (5.7.1.10) > It is incorrect? Where I can found the correct one? > I run CI test locally and it did not show that kind of errors. > Anyway, I will send a new version soon. > Great. Could you please also fix the spurious newlines at then end of the .uni and .inf files in the first two patches? > > pon., 2 sie 2021 o 07:09 gaoliming napisa=C5= =82(a): > > > > I see most failures are coding style. The function header comment styl= e is /** .. **/. > > > > --*/ should be replaced by **/ > > > > Thanks > > Liming > > > -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6----- > > > =E5=8F=91=E4=BB=B6=E4=BA=BA: Ard Biesheuvel > > > =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2021=E5=B9=B48=E6=9C=882=E6=97= = =A5 2:04 > > > =E6=94=B6=E4=BB=B6=E4=BA=BA: Grzegorz Bernacki > > > =E6=8A=84=E9=80=81: edk2-devel-groups-io ; Lei= f Lindholm > > > ; Ard Biesheuvel ; Sam= er > > > El-Haj-Mahmoud ; Sunny Wang > > > ; Marcin Wojtas ; > > > upstream@semihalf.com; Jiewen Yao ; Jian J Wan= g > > > ; Min Xu ; Laszlo Ersek > > > ; Sami Mujawar ; Andrew > > > Fish ; Ray Ni ; Jordan Justen > > > ; Rebecca Cran ; Peter > > > Grehan ; Thomas Abraham > > > ; Chasel Chiu ; Nate > > > DeSimone ; Liming Gao (Byosoft addre= ss) > > > ; Eric Dong ; Michael > > > Kinney ; zailiang.sun@intel.com; > > > yi.qian@intel.com; Graeme Gregory ; Radoslaw > > > Biernacki ; Peter Batard > > > =E4=B8=BB=E9=A2=98: Re: [PATCH v7 00/11] Secure Boot default keys > > > > > > On Fri, 30 Jul 2021 at 12:23, Grzegorz Bernacki w= rote: > > > > > > > > This patchset adds support for initialization of default > > > > Secure Boot variables based on keys content embedded in > > > > flash binary. This feature is active only if Secure Boot > > > > is enabled and DEFAULT_KEY is defined. The patchset > > > > consist also application to enroll keys from default > > > > variables and secure boot menu change to allow user > > > > to reset key content to default values. > > > > Discussion on design can be found at: > > > > https://edk2.groups.io/g/rfc/topic/82139806#600 > > > > > > > > Built with: > > > > GCC > > > > - RISC-V (U500, U540) [requires fixes in dsc to build] > > > > - Intel (Vlv2TbltDevicePkg (X64/IA32), Quark, MinPlatformPkg, > > > > EmulatorPkg (X64), Bhyve, OvmfPkg (X64/IA32)) > > > > - ARM (Sgi75,SbsaQemu,DeveloperBox, RPi3/RPi4) > > > > > > > > RISC-V, Quark, Vlv2TbltDevicePkg, Bhyve requires additional fixes = to be > > > built, > > > > will be post on edk2 maillist later > > > > > > > > VS2019 > > > > - Intel (OvmfPkgX64) > > > > > > > > Test with: > > > > GCC5/RPi4 > > > > VS2019/OvmfX64 (requires changes to enable feature) > > > > > > > > Tests: > > > > 1. Try to enroll key in incorrect format. > > > > 2. Enroll with only PKDefault keys specified. > > > > 3. Enroll with all keys specified. > > > > 4. Enroll when keys are enrolled. > > > > 5. Reset keys values. > > > > 6. Running signed & unsigned app after enrollment. > > > > > > > > Changes since v1: > > > > - change names: > > > > SecBootVariableLib =3D> SecureBootVariableLib > > > > SecBootDefaultKeysDxe =3D> SecureBootDefaultKeysDxe > > > > SecEnrollDefaultKeysApp =3D> EnrollFromDefaultKeysApp > > > > - change name of function CheckSetupMode to GetSetupMode > > > > - remove ShellPkg dependecy from EnrollFromDefaultKeysApp > > > > - rebase to master > > > > > > > > Changes since v2: > > > > - fix coding style for functions headers in SecureBootVariableLib.= h > > > > - add header to SecureBootDefaultKeys.fdf.inc > > > > - remove empty line spaces in SecureBootDefaultKeysDxe files > > > > - revert FAIL macro in EnrollFromDefaultKeysApp > > > > - remove functions duplicates and add SecureBootVariableLib > > > > to platforms which used it > > > > > > > > Changes since v3: > > > > - move SecureBootDefaultKeys.fdf.inc to ArmPlatformPkg > > > > - leave duplicate of CreateTimeBasedPayload in PlatformVarCleanupL= ib > > > > - fix typo in guid description > > > > > > > > Changes since v4: > > > > - reorder patches to make it bisectable > > > > - split commits related to more than one platform > > > > - move edk2-platform commits to separate patchset > > > > > > > > Changes since v5: > > > > - split SecureBootVariableLib into SecureBootVariableLib and > > > > SecureBootVariableProvisionLib > > > > > > > > Changes since v6: > > > > - fix problems found by CI > > > > - add correct modules to SecurityPkg.dsc > > > > - update SecurityPkg.dec > > > > - fix coding style issues > > > > > > > > > > This still generates CI errors: > > > > > > https://github.com/tianocore/edk2/pull/1850 > > > > > > Note that you can create PRs against tianocore/edk2 directly from yo= ur > > > own branch, which will result in the CI checks to be performed on th= e > > > code, without your branch being merged even if all checks pass (that > > > requires the push label which only maintainers can set) > > > > > > > > > > NOTE: edk2-platform has not been changed and v6 platform patches > > > > are still valid > > > > > > > > Grzegorz Bernacki (11): > > > > SecurityPkg: Create SecureBootVariableLib. > > > > SecurityPkg: Create library for enrolling Secure Boot variables. > > > > ArmVirtPkg: add SecureBootVariableLib class resolution > > > > OvmfPkg: add SecureBootVariableLib class resolution > > > > EmulatorPkg: add SecureBootVariableLib class resolution > > > > SecurityPkg: Remove duplicated functions from SecureBootConfigDx= e. > > > > ArmPlatformPkg: Create include file for default key content. > > > > SecurityPkg: Add SecureBootDefaultKeysDxe driver > > > > SecurityPkg: Add EnrollFromDefaultKeys application. > > > > SecurityPkg: Add new modules to Security package. > > > > SecurityPkg: Add option to reset secure boot keys. > > > > > > > > SecurityPkg/SecurityPkg.dec > > > | 22 + > > > > ArmVirtPkg/ArmVirt.dsc.inc > > > | 2 + > > > > EmulatorPkg/EmulatorPkg.dsc > > > | 2 + > > > > OvmfPkg/Bhyve/BhyveX64.dsc > > > | 2 + > > > > OvmfPkg/OvmfPkgIa32.dsc > > > | 2 + > > > > OvmfPkg/OvmfPkgIa32X64.dsc > > > | 2 + > > > > OvmfPkg/OvmfPkgX64.dsc > > > | 2 + > > > > SecurityPkg/SecurityPkg.dsc > > > | 9 +- > > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.inf > > > | 48 ++ > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.i= nf > > > | 80 +++ > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= eProvi > > > sionLib.inf | 80 +++ > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConf= igD > > > xe.inf | 3 + > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureBoo= tD > > > efaultKeysDxe.inf | 46 ++ > > > > SecurityPkg/Include/Library/SecureBootVariableLib.h > > > | 153 ++++++ > > > > SecurityPkg/Include/Library/SecureBootVariableProvisionLib.h > > > | 134 +++++ > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConf= igN > > > vData.h | 2 + > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConf= ig.v > > > fr | 6 + > > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.c > > > | 115 +++++ > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.c > > > | 510 ++++++++++++++++++++ > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= eProvi > > > sionLib.c | 482 ++++++++++++++++++ > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConf= igI > > > mpl.c | 344 ++++++------- > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureBoo= tD > > > efaultKeysDxe.c | 69 +++ > > > > ArmPlatformPkg/SecureBootDefaultKeys.fdf.inc > > > | 70 +++ > > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.u= ni > > > | 17 + > > > > > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= eProvi > > > sionLib.uni | 16 + > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConf= igS > > > trings.uni | 4 + > > > > > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureBoo= tD > > > efaultKeysDxe.uni | 16 + > > > > 27 files changed, 2049 insertions(+), 189 deletions(-) > > > > create mode 100644 > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.inf > > > > create mode 100644 > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.inf > > > > create mode 100644 > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= eProvi > > > sionLib.inf > > > > create mode 100644 > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureBoo= tD > > > efaultKeysDxe.inf > > > > create mode 100644 > > > SecurityPkg/Include/Library/SecureBootVariableLib.h > > > > create mode 100644 > > > SecurityPkg/Include/Library/SecureBootVariableProvisionLib.h > > > > create mode 100644 > > > SecurityPkg/EnrollFromDefaultKeysApp/EnrollFromDefaultKeysApp.c > > > > create mode 100644 > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.c > > > > create mode 100644 > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= eProvi > > > sionLib.c > > > > create mode 100644 > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureBoo= tD > > > efaultKeysDxe.c > > > > create mode 100644 ArmPlatformPkg/SecureBootDefaultKeys.fdf.inc > > > > create mode 100644 > > > SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.uni > > > > create mode 100644 > > > SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariabl= eProvi > > > sionLib.uni > > > > create mode 100644 > > > SecurityPkg/VariableAuthenticated/SecureBootDefaultKeysDxe/SecureBoo= tD > > > efaultKeysDxe.uni > > > > > > > > -- > > > > 2.25.1 > > > > > > > > > > > > > >=20 > > > >