2009-07-31 Vladimir Serbinenko <phcoder@gmail.com>

* partmap/pc.c (pc_partition_map_iterate): Check that boot flags are
	valid.
This commit is contained in:
phcoder 2009-07-31 16:04:27 +00:00
parent 19d50c2be8
commit 67459bc69d
2 changed files with 9 additions and 0 deletions

View file

@ -121,6 +121,10 @@ pc_partition_map_iterate (grub_disk_t disk,
if (mbr.signature != grub_cpu_to_le16 (GRUB_PC_PARTITION_SIGNATURE))
return grub_error (GRUB_ERR_BAD_PART_TABLE, "no signature");
for (i = 0; i < 4; i++)
if (mbr.entries[i].flag & 0x7f)
return grub_error (GRUB_ERR_BAD_PART_TABLE, "bad boot flag");
/* Analyze DOS partitions. */
for (p.index = 0; p.index < 4; p.index++)
{