mirror of https://github.com/wolfSSL/wolfBoot.git
F-9256: rejected ELF does not rewrite the entry point
The rationale that a rejected ELF leaves load_address rewritten no longer matches the code. The skip flag is set on each stage's success path.pull/892/head
parent
a2e6238183
commit
36c57846f5
|
|
@ -781,11 +781,10 @@ backup_on_failure:
|
|||
#endif /* MMU */
|
||||
|
||||
#ifdef WOLFBOOT_UBOOT_LEGACY
|
||||
/* Enter the uImage at ih_ep. Skipped if a later stage (ELF/FIT) re-derived
|
||||
* the load address, since that stage provides its own entry point. The
|
||||
* flag is tracked explicitly rather than by comparing load_address:
|
||||
* elf_load_image_mmu() publishes its entry point before it finishes
|
||||
* validating, so a rejected ELF also leaves load_address rewritten. */
|
||||
/* Enter the uImage at ih_ep. Skipped if a later stage (ELF/FIT) succeeded
|
||||
* and re-derived the load address, since that stage provides its own
|
||||
* entry point. Tracked with an explicit flag set on each stage's success
|
||||
* path rather than by comparing load_address. */
|
||||
if ((uboot_entry != NULL) && !stage_entry_override) {
|
||||
load_address = uboot_entry;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue