Commit 99613c67 authored by Michael Grand's avatar Michael Grand Committed by Jamie
Browse files

bootutil: fix downgrade prevention



Downgrade prevention check moved to secure both TEST
and PERMANENT upgrade modes. Downgrade can still be
performed during REVERT.

Signed-off-by: default avatarMichael Grand <m.grand@trustngo.tech>
parent 88b28657
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -2130,13 +2130,14 @@ context_boot_go(struct boot_loader_state *state, struct boot_rsp *rsp)
            break;

        case BOOT_SWAP_TYPE_TEST:
            /* fallthrough */
        case BOOT_SWAP_TYPE_PERM:
            if (check_downgrade_prevention(state) != 0) {
                /* Downgrade prevented */
                BOOT_SWAP_TYPE(state) = BOOT_SWAP_TYPE_NONE;
                break;
            }
            /* fallthrough */
        case BOOT_SWAP_TYPE_PERM:          /* fallthrough */
        case BOOT_SWAP_TYPE_REVERT:
            rc = BOOT_HOOK_CALL(boot_perform_update_hook, BOOT_HOOK_REGULAR,
                                BOOT_CURR_IMG(state), &(BOOT_IMG(state, 1).hdr),