Libvirt provides a portable, long term stable C API for managing the virtualization technologies provided by many operating systems. It includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER Hypervisor.
Go to file
Daniel P. Berrange 8654175c5b Introduce migration cookies to QEMU driver
The migration protocol has support for a 'cookie' parameter which
is an opaque array of bytes as far as libvirt is concerned. Drivers
may use this for passing around arbitrary extra data they might
need during migration. The QEMU driver needs to do a few things:

 - Pass hostname/uuid to allow strict protection against localhost
   migration attempts
 - Pass SPICE/VNC server port from the target back to the source to
   allow seamless relocation of client sessions
 - Pass lock driver state from source to destination

This patch introduces the basic glue for handling cookies
but only includes the host/guest UUID & name.

* src/libvirt_private.syms: Export virXMLParseStrHelper
* src/qemu/qemu_migration.c, src/qemu/qemu_migration.h: Parsing
  and formatting of migration cookies
* src/qemu/qemu_driver.c: Pass in cookie parameters where possible
* src/remote/remote_protocol.h, src/remote/remote_protocol.x: Change
  cookie max length to 16384 bytes
2011-05-16 15:18:20 +01:00
.gnulib@64a5e38bce maint: avoid a couple of gnulib regressions 2011-05-11 12:03:45 -06:00
daemon Remote driver implementation of new migration API 2011-05-16 15:09:25 +01:00
docs Introduce yet another migration version in API. 2011-05-16 15:09:19 +01:00
examples build: avoid gcc preprocessor extensions 2011-05-11 13:28:50 -06:00
include virDomainGetState public API 2011-05-16 10:04:18 +02:00
m4 tests: Lower stack usage below 4096 bytes 2011-04-30 19:59:52 +02:00
po maint: omit translation for all VIR_INFO 2011-05-11 15:20:33 -06:00
python virDomainGetState public API 2011-05-16 10:04:18 +02:00
src Introduce migration cookies to QEMU driver 2011-05-16 15:18:20 +01:00
tests test: all test_scripts should be part of tarball when building without libvirtd 2011-05-14 13:46:00 +08:00
tools virsh: Prefer virDomainGetState over virDomainGetInfo 2011-05-16 10:04:19 +02:00
.dir-locals.el maint: make spacing in .sh files easier 2011-03-14 21:57:42 -06:00
.gitignore build: Remove all generated RPC files from GIT 2011-05-06 16:22:33 -06:00
.gitmodules make .gnulib a submodule 2009-07-08 16:17:51 +02:00
.mailmap build: fix syntax-check failure 2011-04-20 17:17:56 -06:00
AUTHORS Add warning message to XML definition files stored on disk 2011-05-06 16:48:52 +02:00
autobuild.sh Remove the Open Nebula driver 2011-03-28 14:09:11 +01:00
autogen.sh build: avoid problems with autogen.sh runs from tarball 2011-02-12 06:28:28 -07:00
bootstrap maint: avoid a couple of gnulib regressions 2011-05-11 12:03:45 -06:00
bootstrap.conf Pull in gnulib fnmatch module 2011-05-09 16:10:46 +01:00
cfg.mk Introduce migration cookies to QEMU driver 2011-05-16 15:18:20 +01:00
ChangeLog-old generate ChangeLog from git logs into distribution tarball 2009-07-08 16:17:51 +02:00
configure.ac configure: Fix mpath check on non-Linux systems 2011-05-14 06:40:01 +02:00
COPYING.LIB remove all trailing blank lines 2009-07-16 15:06:42 +02:00
HACKING maint: rename virBufferVSprintf to virBufferAsprintf 2011-05-05 13:47:40 -06:00
libvirt.pc.in * libvirt.pc.in: applied patch from Daniel Berrange to fix --cflags 2006-03-24 13:18:12 +00:00
libvirt.spec.in Release of libvirt-0.9.1 2011-05-05 11:25:13 +08:00
Makefile.am Re-add libvirt.spec to tarball to allwo "make rpm" 2011-05-09 14:23:19 +08:00
Makefile.nonreentrant Ban use of all inet_* functions 2010-10-22 11:59:23 +01:00
mingw32-libvirt.spec.in Remove iohelper on Win32 since it is not required 2011-03-31 17:41:51 +01:00
README Correct typos in the documentation (Atsushi SAKAI) 2008-01-24 10:15:13 +00:00
README-hacking maint: relax git minimum version 2010-02-24 14:29:27 -05:00
TODO Update todo list file to point at bugzilla/website 2010-10-13 16:45:26 +01:00

         LibVirt : simple API for virtualization

  Libvirt is a C toolkit to interact with the virtualization capabilities
of recent versions of Linux (and other OSes). It is free software
available under the GNU Lesser General Public License. Virtualization of
the Linux Operating System means the ability to run multiple instances of
Operating Systems concurrently on a single hardware system where the basic
resources are driven by a Linux instance. The library aim at providing
long term stable C API initially for the Xen paravirtualization but
should be able to integrate other virtualization mechanisms if needed.

Daniel Veillard <veillard@redhat.com>