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
+
+type image2 =
+ image0
+ * addr Ksymmap.t
+ * utsname option
+
+and utsname = {
+ kernel_name : string;
+ nodename : string;
+ kernel_release : string;
+ kernel_version : string;
+ machine : string;
+ domainname : string;
+}