X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=lib%2Fdiskimage_mbr.ml;h=07f9df8a999918bbf1faa07b28327e3aad121745;hb=70ecd5f92e887185fd3e09f603e4c5e1a06ef4f4;hp=bd02f65223402a8f5a177598c647975d70f7331e;hpb=9611aba66734efe3e2f1e0792a90003b657a89f5;p=virt-df.git diff --git a/lib/diskimage_mbr.ml b/lib/diskimage_mbr.ml index bd02f65..07f9df8 100644 --- a/lib/diskimage_mbr.ml +++ b/lib/diskimage_mbr.ml @@ -26,6 +26,8 @@ open ExtList open Diskimage_utils +let plugin_id = "mbr" + let sector_size = 512 let sector_size64 = 512L @@ -40,6 +42,7 @@ let max_extended_partitions = 100 * (2) 'partno' is the partition number, starting at 1 * (cf. /dev/hda1 is the first partition). * (3) 'dev' is the underlying block device. + * (4) natural blocksize to use is sector size. *) class partition_device partno start size dev = let devname = dev#name in @@ -47,7 +50,7 @@ class partition_device partno start size dev = let start = start *^ sector_size64 in let size = size *^ sector_size64 in object (self) - inherit offset_device name start size dev + inherit offset_device name start size sector_size dev end (** Probe the @@ -56,7 +59,7 @@ end @raise Not_found if it is not an MBR. *) -let rec probe_mbr dev = +let rec probe dev = (* Read the first sector. *) let bits = try dev#read_bitstring 0L sector_size @@ -87,7 +90,7 @@ let rec probe_mbr dev = let extendeds = List.concat extendeds in primaries @ extendeds *) - { parts_name = "MBR"; parts = primaries } + { parts_plugin_id = plugin_id; parts = primaries } | { _ } -> raise Not_found (* not an MBR *)