[PATCH] part_dos: check status flags of partitions
Daniel Mack
daniel at caiaq.de
Mon Sep 28 11:40:38 CEST 2009
Only read partitions which have 0x00 or 0x80 set in their status field.
All others are invalid.
Signed-off-by: Daniel Mack <daniel at caiaq.de>
---
disk/part_dos.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/disk/part_dos.c b/disk/part_dos.c
index 93bf3dd..e32d58e 100644
--- a/disk/part_dos.c
+++ b/disk/part_dos.c
@@ -188,7 +188,8 @@ static int get_partition_info_extended (block_dev_desc_t *dev_desc, int ext_part
* fdisk does not show the extended partitions that
* are not in the MBR
*/
- if ((pt->sys_ind != 0) &&
+ if (((pt->boot_ind & ~0x80) == 0) &&
+ (pt->sys_ind != 0) &&
(part_num == which_part) &&
(is_extended(pt->sys_ind) == 0)) {
info->blksz = 512;
--
1.6.3.3
More information about the U-Boot
mailing list