'do_action' function. Take a look at one of the numerous examples
there.
-You will need to run src/generator.ml (from the top directory) which
-regenerates all the auto-generated files, and then continue with the
-ordinary build process.
-
Formatting
----------------------------------------------------------------------
appliance/
The qemu appliance, build scripts and so on.
+cat/
+ The virt-cat tool.
+
capitests/
Automated tests of the C API.
daemon/
The daemon that runs inside the guest and carries out actions.
+df/
+ The virt-df tool.
+
examples/
The examples.
python/
Python bindings.
+regressions/
+ Regression tests.
+
ruby/
Ruby bindings.
Source code to the C library.
Also contains the crucial generator program.
+test-tool/
+ Interactive qemu/kernel test tool.
+
+v2v/
+ Xen to KVM (V2V) conversion tool.
+
Debugging
----------------------------------------------------------------------
Patches
----------------------------------------------------------------------
-Submit patches to the fedora-virt mailing list:
-http://www.redhat.com/mailman/listinfo/fedora-virt
+Submit patches to the mailing list:
+http://www.redhat.com/mailman/listinfo/libguestfs
and CC to rjones@redhat.com
I18N
Debugging messages are never translated, since they are intended for
the programmers.
+
+Extended printf
+----------------------------------------------------------------------
+
+In the daemon code we have created custom printf formatters %Q and %R,
+which are used to do shell quoting.
+
+%Q => Simple shell quoted string. Any spaces or other shell characters
+ are escaped for you.
+
+%R => Same as %Q except the string is treated as a path which is prefixed
+ by the sysroot.
+
+eg.
+
+asprintf (&cmd, "cat %R", path);
+==> "cat /sysroot/some\ path\ with\ spaces"
+
+Note: Do NOT use these when you are passing parameters to the
+command{,r,v,rv}() functions. These parameters do NOT need to be
+quoted because they are not passed via the shell (instead, straight to
+exec). You probably want to use the sysroot_path() function however.