summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorHeinrich Schuchardt <xypron.glpk@gmx.de>2020-12-28 23:24:40 +0100
committerHeinrich Schuchardt <xypron.glpk@gmx.de>2020-12-29 02:09:04 +0100
commitbe48b0f453a3903e924a4f1790f134b9b36e5fa8 (patch)
treeda2c201eb28835141b1652216e57cb36811bd24d /include
parentaeaf0e6d58093102aa35921c7bc6fcb0580504bd (diff)
downloadu-boot-be48b0f453a3903e924a4f1790f134b9b36e5fa8.tar.gz
efi_loader: use after free in efi_exit()
Do not use data from the loaded image object after deleting it. Fixes: 126a43f15b36 ("efi_loader: unload applications upon Exit()") Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Diffstat (limited to 'include')
-rw-r--r--include/efi_loader.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/efi_loader.h b/include/efi_loader.h
index dc3c6ac304..0fc2255f3f 100644
--- a/include/efi_loader.h
+++ b/include/efi_loader.h
@@ -304,10 +304,10 @@ enum efi_image_auth_status {
*/
struct efi_loaded_image_obj {
struct efi_object header;
- efi_status_t exit_status;
+ efi_status_t *exit_status;
efi_uintn_t *exit_data_size;
u16 **exit_data;
- struct jmp_buf_data exit_jmp;
+ struct jmp_buf_data *exit_jmp;
EFIAPI efi_status_t (*entry)(efi_handle_t image_handle,
struct efi_system_table *st);
u16 image_type;