X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=ocaml%2Fguestfs.mli;h=40d1d2a4a533c6abeac1a9759b4c41c5352aa6ec;hp=e3cee18fe8d894a780ebc8c1ddb3489587255e77;hb=f47dafd23186938a22d41739d9bc695c7760b912;hpb=adefe14e308a0f8cf73f9c60693a3dbbded157b9 diff --git a/ocaml/guestfs.mli b/ocaml/guestfs.mli index e3cee18..40d1d2a 100644 --- a/ocaml/guestfs.mli +++ b/ocaml/guestfs.mli @@ -94,6 +94,36 @@ type lvm_lv = { modules : string; } +type stat = { + dev : int64; + ino : int64; + mode : int64; + nlink : int64; + uid : int64; + gid : int64; + rdev : int64; + size : int64; + blksize : int64; + blocks : int64; + atime : int64; + mtime : int64; + ctime : int64; +} + +type statvfs = { + bsize : int64; + frsize : int64; + blocks : int64; + bfree : int64; + bavail : int64; + files : int64; + ffree : int64; + favail : int64; + fsid : int64; + flag : int64; + namemax : int64; +} + val launch : t -> unit (** launch the qemu subprocess *) @@ -112,6 +142,12 @@ val add_cdrom : t -> string -> unit val config : t -> string -> string option -> unit (** add qemu parameters *) +val set_qemu : t -> string -> unit +(** set the qemu binary *) + +val get_qemu : t -> string +(** get the qemu binary *) + val set_path : t -> string -> unit (** set the search path *) @@ -130,6 +166,27 @@ val set_verbose : t -> bool -> unit val get_verbose : t -> bool (** get verbose mode *) +val is_ready : t -> bool +(** is ready to accept commands *) + +val is_config : t -> bool +(** is in configuration state *) + +val is_launching : t -> bool +(** is launching subprocess *) + +val is_busy : t -> bool +(** is busy processing a command *) + +val get_state : t -> int +(** get the current state *) + +val set_busy : t -> unit +(** set state to busy *) + +val set_ready : t -> unit +(** set state to ready *) + val mount : t -> string -> string -> unit (** mount a guest disk at a position in the filesystem *) @@ -277,3 +334,135 @@ val lvm_remove_all : t -> unit val file : t -> string -> string (** determine file type *) +val command : t -> string array -> string +(** run a command from the guest filesystem *) + +val command_lines : t -> string array -> string array +(** run a command, returning lines *) + +val stat : t -> string -> stat +(** get file information *) + +val lstat : t -> string -> stat +(** get file information for a symbolic link *) + +val statvfs : t -> string -> statvfs +(** get file system statistics *) + +val tune2fs_l : t -> string -> (string * string) list +(** get ext2/ext3/ext4 superblock details *) + +val blockdev_setro : t -> string -> unit +(** set block device to read-only *) + +val blockdev_setrw : t -> string -> unit +(** set block device to read-write *) + +val blockdev_getro : t -> string -> bool +(** is block device set to read-only *) + +val blockdev_getss : t -> string -> int +(** get sectorsize of block device *) + +val blockdev_getbsz : t -> string -> int +(** get blocksize of block device *) + +val blockdev_setbsz : t -> string -> int -> unit +(** set blocksize of block device *) + +val blockdev_getsz : t -> string -> int64 +(** get total size of device in 512-byte sectors *) + +val blockdev_getsize64 : t -> string -> int64 +(** get total size of device in bytes *) + +val blockdev_flushbufs : t -> string -> unit +(** flush device buffers *) + +val blockdev_rereadpt : t -> string -> unit +(** reread partition table *) + +val upload : t -> string -> string -> unit +(** upload a file from the local machine *) + +val download : t -> string -> string -> unit +(** download a file to the local machine *) + +val checksum : t -> string -> string -> string +(** compute MD5, SHAx or CRC checksum of file *) + +val tar_in : t -> string -> string -> unit +(** unpack tarfile to directory *) + +val tar_out : t -> string -> string -> unit +(** pack directory into tarfile *) + +val tgz_in : t -> string -> string -> unit +(** unpack compressed tarball to directory *) + +val tgz_out : t -> string -> string -> unit +(** pack directory into compressed tarball *) + +val mount_ro : t -> string -> string -> unit +(** mount a guest disk, read-only *) + +val mount_options : t -> string -> string -> string -> unit +(** mount a guest disk with mount options *) + +val mount_vfs : t -> string -> string -> string -> string -> unit +(** mount a guest disk with mount options and vfstype *) + +val debug : t -> string -> string array -> string +(** debugging and internals *) + +val lvremove : t -> string -> unit +(** remove an LVM logical volume *) + +val vgremove : t -> string -> unit +(** remove an LVM volume group *) + +val pvremove : t -> string -> unit +(** remove an LVM physical volume *) + +val set_e2label : t -> string -> string -> unit +(** set the ext2/3/4 filesystem label *) + +val get_e2label : t -> string -> string +(** get the ext2/3/4 filesystem label *) + +val set_e2uuid : t -> string -> string -> unit +(** set the ext2/3/4 filesystem UUID *) + +val get_e2uuid : t -> string -> string +(** get the ext2/3/4 filesystem UUID *) + +val fsck : t -> string -> string -> int +(** run the filesystem checker *) + +val zero : t -> string -> unit +(** write zeroes to the device *) + +val grub_install : t -> string -> string -> unit +(** install GRUB *) + +val cp : t -> string -> string -> unit +(** copy a file *) + +val cp_a : t -> string -> string -> unit +(** copy a file or directory recursively *) + +val mv : t -> string -> string -> unit +(** move a file *) + +val drop_caches : t -> int -> unit +(** drop kernel page cache, dentries and inodes *) + +val dmesg : t -> string +(** return kernel messages *) + +val ping_daemon : t -> unit +(** ping the guest daemon *) + +val equal : t -> string -> string -> bool +(** test if two files have equal contents *) +