Skip to content
Snippets Groups Projects
  • Egbert Eich's avatar
    9d956e0f
    disk/part_dos: check harder for partition table · 9d956e0f
    Egbert Eich authored
    
    Devices that used to have a whole disk FAT filesystem but got then
    partitioned will most likely still have a FAT or FAT32 signature
    in the first sector as this sector does not get overwritten by
    a partitioning tool (otherwise the tool would risk to kill the mbr).
    
    The current partition search algorithm will erronously detects such
    a device as a raw FAT device.
    
    Instead of looking for the FAT or FAT32 signatures immediately we
    use the same algorithm as used by the Linux kernel and first check
    for a valid boot indicator flag on each of the 4 partitions.
    If the value of this flag is invalid for the first entry we then
    do the raw partition check.
    If the flag for any higher partition is wrong we assume the device
    is neiter a MBR nor PBR device.
    
    Signed-off-by: default avatarEgbert Eich <eich@suse.com>
    9d956e0f
    History
    disk/part_dos: check harder for partition table
    Egbert Eich authored
    
    Devices that used to have a whole disk FAT filesystem but got then
    partitioned will most likely still have a FAT or FAT32 signature
    in the first sector as this sector does not get overwritten by
    a partitioning tool (otherwise the tool would risk to kill the mbr).
    
    The current partition search algorithm will erronously detects such
    a device as a raw FAT device.
    
    Instead of looking for the FAT or FAT32 signatures immediately we
    use the same algorithm as used by the Linux kernel and first check
    for a valid boot indicator flag on each of the 4 partitions.
    If the value of this flag is invalid for the first entry we then
    do the raw partition check.
    If the flag for any higher partition is wrong we assume the device
    is neiter a MBR nor PBR device.
    
    Signed-off-by: default avatarEgbert Eich <eich@suse.com>