On Mon, Aug 15, 2022 at 05:23:15PM +0200, Patrick Steinhardt wrote:
> On Fri, Jul 22, 2022 at 03:04:50AM -0500, Glenn Washburn wrote:
> > luks2_get_keyslot can fail for a variety of reasons that do not neccesarily
> > mean the next keyslot should not be tried (eg. a new kdf type). So always
> > try the next slot. This will make GRUB more resilient to non-spec json data
> > that 3rd party systems may add. We do not care if some of the keyslots are
> > unusable, only if there is at least one that is.
> >
> > Signed-off-by: Glenn Washburn <developm...@efficientek.com>
> > ---
> >  grub-core/disk/luks2.c | 10 +++++++++-
> >  1 file changed, 9 insertions(+), 1 deletion(-)
> >
> > diff --git a/grub-core/disk/luks2.c b/grub-core/disk/luks2.c
> > index bf741d70f..d8d3180ed 100644
> > --- a/grub-core/disk/luks2.c
> > +++ b/grub-core/disk/luks2.c
> > @@ -610,7 +610,15 @@ luks2_recover_key (grub_disk_t source,
> >        grub_errno = GRUB_ERR_NONE;
> >        ret = luks2_get_keyslot (&keyslot, &digest, &segment, json, 
> > json_idx);
> >        if (ret)
> > -   goto err;
> > +   {
> > +     /*
> > +      * luks2_get_keyslot can fail for a variety of reasons that do not
> > +      * neccesarily mean the next keyslot should not be tried (eg. a new
> > +      * kdf type). So always try the next slot.
> > +      */
> > +     grub_dprintf ("luks2", "Failed to get keyslot %" PRIuGRUB_UINT64_T 
> > "\n", keyslot.idx);
> > +     continue;
> > +   }
> >        if (grub_errno != GRUB_ERR_NONE)
> >       grub_dprintf ("luks2", "Ignoring unhandled error %d from 
> > luks2_get_keyslot\n", grub_errno);
> >
> > --
> > 2.34.1
> >
>
> Reviewed-by: Patrick Steinhardt <p...@pks.im>

Thank you for review but I have merged this patch earlier and cannot add
your RB now... :-(

Daniel

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to