Common types.
*)
-(** A kernel image. *)
-type image0 =
- int option (* Domain ID, if known. *)
- * string (* Domain name. *)
- * Virt_mem_utils.architecture (* Architecture, eg. i386. *)
- * ([`Wordsize], [`Endian], [`HasMapping]) Virt_mem_mmap.t (* Memory map. *)
-
-(** A kernel symbol. *)
+module D = Libvirt.Domain
+
+open Virt_mem_mmap
+
type ksym = string
-(** A kernel image, after finding kernel symbols. *)
+module Ksymmap = Map.Make (String)
+
+type image0 = {
+ dom : Libvirt.ro D.t option;
+ domname : string;
+ arch : Virt_mem_utils.architecture;
+ mem : ([`Wordsize], [`Endian], [`HasMapping]) Virt_mem_mmap.t;
+}
+
type image1 =
- int option (* Domain ID, if known. *)
- * string (* Domain name. *)
- * Virt_mem_utils.architecture (* Architecture, eg. i386. *)
- * ([`Wordsize], [`Endian], [`HasMapping]) Virt_mem_mmap.t (* Memory map. *)
- * (ksym -> Virt_mem_mmap.addr) (* Kernel symbol lookup function. *)
+ image0
+ * addr Ksymmap.t
-(** A kernel image, after finding kernel version (like 'uname'). *)
type image2 =
- int option (* Domain ID, if known. *)
- * string (* Domain name. *)
- * Virt_mem_utils.architecture (* Architecture, eg. i386. *)
- * ([`Wordsize], [`Endian], [`HasMapping]) Virt_mem_mmap.t (* Memory map. *)
- * (ksym -> Virt_mem_mmap.addr) (* Kernel symbol lookup function. *)
- * utsname option (* Kernel version, etc., if known. *)
+ image0
+ * addr Ksymmap.t
+ * utsname option
and utsname = {
kernel_name : string;