From: Brett Grandbois Date: Wed, 16 May 2018 03:23:49 +0000 (+1000) Subject: discover/boot: abort kexec on any error from validation X-Git-Tag: v1.8.0~3 X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=1214247667d138e2fa1748f4f270e5fc80010377 discover/boot: abort kexec on any error from validation gpg_validate_boot_files() can return error codes for a variety of reasons but kexec_load only aborts for signature or decryption failure. In any other failure case like unable to open LOCKDOWN_FILE or do the secure copy the validation is bypassed by an early return but kexec_load does not abort. Signed-off-by: Brett Grandbois Signed-off-by: Samuel Mendoza-Jonas --- diff --git a/discover/boot.c b/discover/boot.c index 0da40e3..09e42f2 100644 --- a/discover/boot.c +++ b/discover/boot.c @@ -76,13 +76,13 @@ static int kexec_load(struct boot_task *boot_task) if (result == KEXEC_LOAD_DECRYPTION_FALURE) { pb_log("%s: Aborting kexec due to" " decryption failure\n", __func__); - goto abort_kexec; } if (result == KEXEC_LOAD_SIGNATURE_FAILURE) { pb_log("%s: Aborting kexec due to signature" " verification failure\n", __func__); - goto abort_kexec; } + + goto abort_kexec; } const char* local_initrd = (boot_task->local_initrd_override) ?