[PATCH] efi_loader: fix an IS_ERR() vs NULL check

Ilias Apalodimas ilias.apalodimas at linaro.org
Thu Jul 27 10:28:52 CEST 2023


Hi Dan, Heinrich

On Thu, 27 Jul 2023 at 11:25, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 7/27/23 09:16, Dan Carpenter wrote:
> > The efi_parse_pkcs7_header() function returns NULL on error so the check
> > for IS_ERR() should be changed to a NULL check.
> >
> > Signed-off-by: Dan Carpenter <dan.carpenter at linaro.org>
> > ---
> >   lib/efi_loader/efi_capsule.c | 3 +--
> >   1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/lib/efi_loader/efi_capsule.c b/lib/efi_loader/efi_capsule.c
> > index 7a6f195cbc02..c98cff812f10 100644
> > --- a/lib/efi_loader/efi_capsule.c
> > +++ b/lib/efi_loader/efi_capsule.c
> > @@ -368,9 +368,8 @@ efi_status_t efi_capsule_authenticate(const void *capsule, efi_uintn_t capsule_s
> >                                            auth_hdr->auth_info.hdr.dwLength
> >                                            - sizeof(auth_hdr->auth_info),
> >                                            &buf);
> > -     if (IS_ERR(capsule_sig)) {
> > +     if (!capsule_sig) {
>
> Thanks for addressing this bug.
>
> Can we get rid of all the IS_ERR() in efi_capsule_authenticate() and use
> IS_ERR_OR_NULL() here?
>
> Best regards

Heinrich is right here.   This seems more fundamentally broken as
efi_parse_pkcs7_header() can return an IS_ERR() or NULL...

Thanks
/Ilias
>
> Heinrich
>
> >               debug("Parsing variable's pkcs7 header failed\n");
> > -             capsule_sig = NULL;
> >               goto out;
> >       }
> >
>


More information about the U-Boot mailing list