projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
bfd412d
)
Validate size of EFI GUID partition entries.
author
Timo Warns
<
[email protected]
>
Fri, 6 May 2011 11:47:35 +0000
(13:47 +0200)
committer
Linus Torvalds
<
[email protected]
>
Fri, 6 May 2011 14:46:37 +0000
(07:46 -0700)
Otherwise corrupted EFI partition tables can cause total confusion.
Signed-off-by: Timo Warns <
[email protected]
>
Cc:
[email protected]
Signed-off-by: Linus Torvalds <
[email protected]
>
fs/partitions/efi.c
patch
|
blob
|
history
diff --git
a/fs/partitions/efi.c
b/fs/partitions/efi.c
index ac0ccb5026a2d107eb5e5e38c84e4bdfe51682ed..19d6750d1d6ce3b5571e463ee2fb2d768985d644 100644
(file)
--- a/
fs/partitions/efi.c
+++ b/
fs/partitions/efi.c
@@
-348,6
+348,12
@@
static int is_gpt_valid(struct parsed_partitions *state, u64 lba,
goto fail;
}
+ /* Check that sizeof_partition_entry has the correct value */
+ if (le32_to_cpu((*gpt)->sizeof_partition_entry) != sizeof(gpt_entry)) {
+ pr_debug("GUID Partitition Entry Size check failed.\n");
+ goto fail;
+ }
+
if (!(*ptes = alloc_read_gpt_entries(state, *gpt)))
goto fail;