Allow qemu binary to be overridden at runtime.
[libguestfs.git] / python / guestfs.py
index 9739fa5..e5f43d1 100644 (file)
@@ -143,6 +143,32 @@ class GuestFS:
         """
         return libguestfsmod.config (self._o, qemuparam, qemuvalue)
 
         """
         return libguestfsmod.config (self._o, qemuparam, qemuvalue)
 
+    def set_qemu (self, qemu):
+        u"""Set the qemu binary that we will use.
+        
+        The default is chosen when the library was compiled by
+        the configure script.
+        
+        You can also override this by setting the
+        "LIBGUESTFS_QEMU" environment variable.
+        
+        The string "qemu" is stashed in the libguestfs handle,
+        so the caller must make sure it remains valid for the
+        lifetime of the handle.
+        
+        Setting "qemu" to "NULL" restores the default qemu
+        binary.
+        """
+        return libguestfsmod.set_qemu (self._o, qemu)
+
+    def get_qemu (self):
+        u"""Return the current qemu binary.
+        
+        This is always non-NULL. If it wasn't set already, then
+        this will return the default qemu binary name.
+        """
+        return libguestfsmod.get_qemu (self._o)
+
     def set_path (self, path):
         u"""Set the path that libguestfs searches for kernel and
         initrd.img.
     def set_path (self, path):
         u"""Set the path that libguestfs searches for kernel and
         initrd.img.
@@ -193,6 +219,63 @@ class GuestFS:
         """
         return libguestfsmod.get_verbose (self._o)
 
         """
         return libguestfsmod.get_verbose (self._o)
 
+    def is_ready (self):
+        u"""This returns true iff this handle is ready to accept
+        commands (in the "READY" state).
+        
+        For more information on states, see guestfs(3).
+        """
+        return libguestfsmod.is_ready (self._o)
+
+    def is_config (self):
+        u"""This returns true iff this handle is being configured
+        (in the "CONFIG" state).
+        
+        For more information on states, see guestfs(3).
+        """
+        return libguestfsmod.is_config (self._o)
+
+    def is_launching (self):
+        u"""This returns true iff this handle is launching the
+        subprocess (in the "LAUNCHING" state).
+        
+        For more information on states, see guestfs(3).
+        """
+        return libguestfsmod.is_launching (self._o)
+
+    def is_busy (self):
+        u"""This returns true iff this handle is busy processing a
+        command (in the "BUSY" state).
+        
+        For more information on states, see guestfs(3).
+        """
+        return libguestfsmod.is_busy (self._o)
+
+    def get_state (self):
+        u"""This returns the current state as an opaque integer.
+        This is only useful for printing debug and internal
+        error messages.
+        
+        For more information on states, see guestfs(3).
+        """
+        return libguestfsmod.get_state (self._o)
+
+    def set_busy (self):
+        u"""This sets the state to "BUSY". This is only used when
+        implementing actions using the low-level API.
+        
+        For more information on states, see guestfs(3).
+        """
+        return libguestfsmod.set_busy (self._o)
+
+    def set_ready (self):
+        u"""This sets the state to "READY". This is only used when
+        implementing actions using the low-level API.
+        
+        For more information on states, see guestfs(3).
+        """
+        return libguestfsmod.set_ready (self._o)
+
     def mount (self, device, mountpoint):
         u"""Mount a guest disk at a position in the filesystem.
         Block devices are named "/dev/sda", "/dev/sdb" and so
     def mount (self, device, mountpoint):
         u"""Mount a guest disk at a position in the filesystem.
         Block devices are named "/dev/sda", "/dev/sdb" and so
@@ -236,7 +319,7 @@ class GuestFS:
         Note that this function cannot correctly handle binary
         files (specifically, files containing "\\0" character
         which is treated as end of string). For those you need
         Note that this function cannot correctly handle binary
         files (specifically, files containing "\\0" character
         which is treated as end of string). For those you need
-        to use the "g.read_file" function which has a more
+        to use the "g.download" function which has a more
         complex interface.
         
         Because of the message protocol, there is a transfer
         complex interface.
         
         Because of the message protocol, there is a transfer
@@ -882,3 +965,93 @@ class GuestFS:
         """
         return libguestfsmod.blockdev_rereadpt (self._o, device)
 
         """
         return libguestfsmod.blockdev_rereadpt (self._o, device)
 
+    def upload (self, filename, remotefilename):
+        u"""Upload local file "filename" to "remotefilename" on the
+        filesystem.
+        
+        "filename" can also be a named pipe.
+        
+        See also "g.download".
+        """
+        return libguestfsmod.upload (self._o, filename, remotefilename)
+
+    def download (self, remotefilename, filename):
+        u"""Download file "remotefilename" and save it as "filename"
+        on the local machine.
+        
+        "filename" can also be a named pipe.
+        
+        See also "g.upload", "g.cat".
+        """
+        return libguestfsmod.download (self._o, remotefilename, filename)
+
+    def checksum (self, csumtype, path):
+        u"""This call computes the MD5, SHAx or CRC checksum of the
+        file named "path".
+        
+        The type of checksum to compute is given by the
+        "csumtype" parameter which must have one of the
+        following values:
+        
+        "crc"
+        Compute the cyclic redundancy check (CRC) specified
+        by POSIX for the "cksum" command.
+        
+        "md5"
+        Compute the MD5 hash (using the "md5sum" program).
+        
+        "sha1"
+        Compute the SHA1 hash (using the "sha1sum" program).
+        
+        "sha224"
+        Compute the SHA224 hash (using the "sha224sum"
+        program).
+        
+        "sha256"
+        Compute the SHA256 hash (using the "sha256sum"
+        program).
+        
+        "sha384"
+        Compute the SHA384 hash (using the "sha384sum"
+        program).
+        
+        "sha512"
+        Compute the SHA512 hash (using the "sha512sum"
+        program).
+        
+        The checksum is returned as a printable string.
+        """
+        return libguestfsmod.checksum (self._o, csumtype, path)
+
+    def tar_in (self, tarfile, directory):
+        u"""This command uploads and unpacks local file "tarfile"
+        (an *uncompressed* tar file) into "directory".
+        
+        To upload a compressed tarball, use "g.tgz_in".
+        """
+        return libguestfsmod.tar_in (self._o, tarfile, directory)
+
+    def tar_out (self, directory, tarfile):
+        u"""This command packs the contents of "directory" and
+        downloads it to local file "tarfile".
+        
+        To download a compressed tarball, use "g.tgz_out".
+        """
+        return libguestfsmod.tar_out (self._o, directory, tarfile)
+
+    def tgz_in (self, tarball, directory):
+        u"""This command uploads and unpacks local file "tarball" (a
+        *gzip compressed* tar file) into "directory".
+        
+        To upload an uncompressed tarball, use "g.tar_in".
+        """
+        return libguestfsmod.tgz_in (self._o, tarball, directory)
+
+    def tgz_out (self, directory, tarball):
+        u"""This command packs the contents of "directory" and
+        downloads it to local file "tarball".
+        
+        To download an uncompressed tarball, use "g.tar_out".
+        """
+        return libguestfsmod.tgz_out (self._o, directory, tarball)
+