This set of 10 patches removes the need for any vmchannel implementation,
although we can still choose to use vmchannel if we want.
In this so-called "null vmchannel" configuration, the appliance
connects directly to a port on the library. The exact method is
described in patch 9/10.
This method still requires SLIRP (user mode networking) so it is
not a panacea, because recent versions of qemu allow SLIRP to be
removed. We therefore need to continue along the path of exploring
alternate vmchannel implementations.
[PATCH 01/10] Rearrange qemu command line order (no functional change).
[PATCH 02/10] Combine temporary buffers.
- General code cleanups.
[PATCH 03/10] Remove guestfs_wait_ready (turn it into a no-op).
- guestfs_wait_ready is no longer helpful. Since vmchannel and
null vmchannel are fundamentally different, we need to remove
the split between launch and wait_ready and make launch into a
single large function that can handle both cases.
[PATCH 04/10] Remove unnecessary extra space from qemu command line.
[PATCH 05/10] Make GUESTFWD_PORT into a string.
[PATCH 06/10] Rearrange and tidy up code in guestfsd.c
- More code cleanups.
[PATCH 07/10] Flexible guestfs_vmchannel parameter for future appliances.
- Add guestfs_vmchannel=(tcp:<ip>:<port>|...) parameter to the
appliance, and make it backwards compatible with older library
version.
[PATCH 08/10] configure.ac: Check for <netinet/in.h> and <arpa/inet.h>
[PATCH 09/10] Implement "null vmchannel" - no vmchannel needed!
[PATCH 10/10] Update documentation of qemu / vmchannel.
- The implementation of null vmchannel.