X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=src%2Fguestfs.pod;h=2fa3acebe842b2695df9e5b91cd5c32be9686e4a;hb=61adbba900a4150110d9fcd20097b3a5c249e6c7;hp=584e996ad6a16ef29d010fe05df9a4e9ff69cb54;hpb=ce95be8b185ce697816c3446406d7129e01cc0e1;p=libguestfs.git diff --git a/src/guestfs.pod b/src/guestfs.pod index 584e996..2fa3ace 100644 --- a/src/guestfs.pod +++ b/src/guestfs.pod @@ -258,9 +258,11 @@ L. It's often the case that you want to write a file or files to the disk image. -For small, single files, use L. This call -currently contains a bug which limits the call to plain text files -(not containing ASCII NUL characters). +To write a small file with fixed content, use L. To +create a file of all zeroes, use L (sparse) or +L (with all disk blocks allocated). There are a +variety of other functions for creating test files, for example +L and L. To upload a single file, use L. This call has no limits on file content or size (even files larger than 4 GB). @@ -610,6 +612,23 @@ the error message was also unintuitive, but we have corrected this since. Like the Bourne shell, we should have used C to run commands. +=item Protocol limit of 256 characters for error messages + +This limit is both rather small and quite unnecessary. We should be +able to return error messages up to the length of the protocol message +(2-4 MB). + +Note that we cannot change the protocol without some breakage, because +there are distributions that repackage the Fedora appliance. + +=item Protocol should return errno with error messages. + +It would be a nice-to-have to be able to get the original value of +'errno' from inside the appliance along error paths (where set). +Currently L goes through hoops to try to reverse the +error message string into an errno, see the function error() in +fuse/guestmount.c. + =back =head2 PROTOCOL LIMITS @@ -786,6 +805,13 @@ supports the functionality. @AVAILABILITY@ +=head2 GUESTFISH supported COMMAND + +In L there is a handy interactive command +C which prints out the available groups and +whether they are supported by this build of libguestfs. +Note however that you have to do C first. + =head2 SINGLE CALLS AT COMPILE TIME If you need to test whether a single libguestfs function is @@ -1009,13 +1035,31 @@ any state to the CONFIG state). typedef void (*guestfs_launch_done_cb) (guestfs_h *g, void *opaque); void guestfs_set_launch_done_callback (guestfs_h *g, - guestfs_ready_cb cb, + guestfs_launch_done_cb cb, void *opaque); The callback function C will be called when the child process becomes ready first time after it has been launched. (This corresponds to a transition from LAUNCHING to the READY state). +=head2 guestfs_set_close_callback + + typedef void (*guestfs_close_cb) (guestfs_h *g, void *opaque); + void guestfs_set_close_callback (guestfs_h *g, + guestfs_close_cb cb, + void *opaque); + +The callback function C will be called while the handle +is being closed (synchronously from L). + +Note that libguestfs installs an L handler to try to +clean up handles that are open when the program exits. This +means that this callback might be called indirectly from +L, which can cause unexpected problems in higher-level +languages (eg. if your HLL interpreter has already been cleaned +up by the time this is called, and if your callback then jumps +into some HLL function). + =head1 BLOCK DEVICE NAMING In the kernel there is now quite a profusion of schemata for naming