This function returns 0 on success or -1 on error.
+=head2 guestfs_cp
+
+ int guestfs_cp (guestfs_h *handle,
+ const char *src,
+ const char *dest);
+
+This copies a file from C<src> to C<dest> where C<dest> is
+either a destination filename or destination directory.
+
+This function returns 0 on success or -1 on error.
+
+=head2 guestfs_cp_a
+
+ int guestfs_cp_a (guestfs_h *handle,
+ const char *src,
+ const char *dest);
+
+This copies a file or directory from C<src> to C<dest>
+recursively using the C<cp -a> command.
+
+This function returns 0 on success or -1 on error.
+
=head2 guestfs_debug
char *guestfs_debug (guestfs_h *handle,
This function returns a string, or NULL on error.
I<The caller must free the returned string after use>.
+=head2 guestfs_dmesg
+
+ char *guestfs_dmesg (guestfs_h *handle);
+
+This returns the kernel messages (C<dmesg> output) from
+the guest kernel. This is sometimes useful for extended
+debugging of problems.
+
+Another way to get the same information is to enable
+verbose messages with C<guestfs_set_verbose> or by setting
+the environment variable C<LIBGUESTFS_DEBUG=1> before
+running the program.
+
+This function returns a string, or NULL on error.
+I<The caller must free the returned string after use>.
+
=head2 guestfs_download
int guestfs_download (guestfs_h *handle,
This function returns 0 on success or -1 on error.
+=head2 guestfs_drop_caches
+
+ int guestfs_drop_caches (guestfs_h *handle,
+ int whattodrop);
+
+This instructs the guest kernel to drop its page cache,
+and/or dentries and inode caches. The parameter C<whattodrop>
+tells the kernel what precisely to drop, see
+L<http://linux-mm.org/Drop_Caches>
+
+Setting C<whattodrop> to 3 should drop everything.
+
+This automatically calls L<sync(2)> before the operation,
+so that the maximum guest memory is freed.
+
+This function returns 0 on success or -1 on error.
+
+=head2 guestfs_equal
+
+ int guestfs_equal (guestfs_h *handle,
+ const char *file1,
+ const char *file2);
+
+This compares the two files C<file1> and C<file2> and returns
+true if their content is exactly equal, or false otherwise.
+
+The external L<cmp(1)> program is used for the comparison.
+
+This function returns a C truth value on success or -1 on error.
+
=head2 guestfs_exists
int guestfs_exists (guestfs_h *handle,
This function returns 0 on success or -1 on error.
+=head2 guestfs_hexdump
+
+ char *guestfs_hexdump (guestfs_h *handle,
+ const char *path);
+
+This runs C<hexdump -C> on the given C<path>. The result is
+the human-readable, canonical hex dump of the file.
+
+This function returns a string, or NULL on error.
+I<The caller must free the returned string after use>.
+
+Because of the message protocol, there is a transfer limit
+of somewhere between 2MB and 4MB. To transfer large files you should use
+FTP.
+
=head2 guestfs_is_busy
int guestfs_is_busy (guestfs_h *handle);
const char *device);
This creates a filesystem on C<device> (usually a partition
-of LVM logical volume). The filesystem type is C<fstype>, for
+or LVM logical volume). The filesystem type is C<fstype>, for
example C<ext3>.
This function returns 0 on success or -1 on error.
(like L<environ(3)>), or NULL if there was an error.
I<The caller must free the strings and the array after use>.
+=head2 guestfs_mv
+
+ int guestfs_mv (guestfs_h *handle,
+ const char *src,
+ const char *dest);
+
+This moves a file from C<src> to C<dest> where C<dest> is
+either a destination filename or destination directory.
+
+This function returns 0 on success or -1 on error.
+
+=head2 guestfs_ping_daemon
+
+ int guestfs_ping_daemon (guestfs_h *handle);
+
+This is a test probe into the guestfs daemon running inside
+the qemu subprocess. Calling this function checks that the
+daemon responds to the ping message, without affecting the daemon
+or attached block device(s) in any other way.
+
+This function returns 0 on success or -1 on error.
+
=head2 guestfs_pvcreate
int guestfs_pvcreate (guestfs_h *handle,
or NULL if there was an error.
I<The caller must call C<free> after use>.
+=head2 guestfs_strings
+
+ char **guestfs_strings (guestfs_h *handle,
+ const char *path);
+
+This runs the L<strings(1)> command on a file and returns
+the list of printable strings found.
+
+This function returns a NULL-terminated array of strings
+(like L<environ(3)>), or NULL if there was an error.
+I<The caller must free the strings and the array after use>.
+
+Because of the message protocol, there is a transfer limit
+of somewhere between 2MB and 4MB. To transfer large files you should use
+FTP.
+
+=head2 guestfs_strings_e
+
+ char **guestfs_strings_e (guestfs_h *handle,
+ const char *encoding,
+ const char *path);
+
+This is like the C<guestfs_strings> command, but allows you to
+specify the encoding.
+
+See the L<strings(1)> manpage for the full list of encodings.
+
+Commonly useful encodings are C<l> (lower case L) which will
+show strings inside Windows/x86 files.
+
+The returned strings are transcoded to UTF-8.
+
+This function returns a NULL-terminated array of strings
+(like L<environ(3)>), or NULL if there was an error.
+I<The caller must free the strings and the array after use>.
+
+Because of the message protocol, there is a transfer limit
+of somewhere between 2MB and 4MB. To transfer large files you should use
+FTP.
+
=head2 guestfs_sync
int guestfs_sync (guestfs_h *handle);
then the length is calculated using C<strlen> (so in this case
the content cannot contain embedded ASCII NULs).
+I<NB.> Owing to a bug, writing content containing ASCII NUL
+characters does I<not> work, even if the length is specified.
+We hope to resolve this bug in a future version. In the meantime
+use C<guestfs_upload>.
+
This function returns 0 on success or -1 on error.
Because of the message protocol, there is a transfer limit