[PATCH 5/5] efi_loader: refactor efi_append_scrtm_version()

Masahisa Kojima masahisa.kojima at linaro.org
Fri Jul 9 04:05:05 CEST 2021


On Fri, 9 Jul 2021 at 02:32, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 7/7/21 3:36 PM, Masahisa Kojima wrote:
> > Refactor efi_append_scrtm_version() to use common
> > function for adding eventlog and extending PCR.
> >
> > Signed-off-by: Masahisa Kojima <masahisa.kojima at linaro.org>
> > ---
> >   lib/efi_loader/efi_tcg2.c | 14 +-------------
> >   1 file changed, 1 insertion(+), 13 deletions(-)
> >
> > diff --git a/lib/efi_loader/efi_tcg2.c b/lib/efi_loader/efi_tcg2.c
> > index 823abd8217..00e442cea5 100644
> > --- a/lib/efi_loader/efi_tcg2.c
> > +++ b/lib/efi_loader/efi_tcg2.c
> > @@ -1321,23 +1321,11 @@ out:
> >    */
> >   static efi_status_t efi_append_scrtm_version(struct udevice *dev)
> >   {
> > -     struct tpml_digest_values digest_list;
> >       u8 ver[] = U_BOOT_VERSION_STRING;
> > -     const int pcr_index = 0;
> >       efi_status_t ret;
> >
> > -     ret = tcg2_create_digest(ver, sizeof(ver), &digest_list);
> > -     if (ret != EFI_SUCCESS)
> > -             goto out;
> > +     ret = tcg2_measure_event(dev, 0, EV_S_CRTM_VERSION, sizeof(ver), ver);
>
> Must we convert the string to UTF-16? What is required to get a correct
> listing of the event in the OS?

TCG PC Client spec just says "The event field contains the version string
of the SRTM.".
I think there is no character encoding requirement.

Thanks,
Masahisa Kojima


>
> Best regards
>
> Heinrich
>
> >
> > -     ret = tcg2_pcr_extend(dev, pcr_index, &digest_list);
> > -     if (ret != EFI_SUCCESS)
> > -             goto out;
> > -
> > -     ret = tcg2_agile_log_append(pcr_index, EV_S_CRTM_VERSION, &digest_list,
> > -                                 sizeof(ver), ver);
> > -
> > -out:
> >       return ret;
> >   }
> >
> >
>


More information about the U-Boot mailing list