Releases (2013)

Here is the list of official releases made during the year 2013. A similar list for 2012 is also available.

It is also possible to just use the GIT version or snapshot, contact the mailing list and check the GIT log to gauge progress.

1.2.0: Dec 02 2013

1.1.4: Nov 04 2013

1.1.3: Oct 01 2013

1.1.2: Sep 02 2013

1.1.1: Jul 30 2013

1.1.0: Jul 01 2013

  • Features:
    Extensible migration APIs (Jiri Denemark),
    Add a policy kit access control driver (Daniel P. Berrange),
    various improvements in the Xen driver (Jim Fehlig and Marek Marczykowski-Górecki),
    improve networking support on BSD (Roman Bogorodskiy),
    agent based vCPU hotplug support (Peter Krempa)
  • Security:
    CVE-2013-2218: Fix crash listing network interfaces with filters (Daniel P. Berrange)
  • Documentation:
    Document security reporting & handling process (Daniel P. Berrange),
    Fix reference to #elementsUSB (Philipp Hahn),
    Fix sample TPM XML (Stefan Berger),
    correct and update network vlan example (Laine Stump),
    add spaces to formatstorage.html (Ján Tomko)
  • Portability:
    spec: require xen-devel for libxl driver (Eric Blake),
    Conditionalize use of IF_MAXUNIT in virnetdevtap.c (Daniel P. Berrange),
    Replace use of 'in_addr_t' with 'struct in_addr' (Daniel P. Berrange),
    build: Fix VPATH build for access/* (Viktor Mihajlovski),
    util: fix build error on non-Linux systems (Laine Stump),
    conf: Swap order of AddImplicitControllers and DomainDefPostParse (Viktor Mihajlovski),
    S390: Testcase for console default target type (virtio) (Viktor Mihajlovski),
    Fix units in virNetDevBridgeSetSTPDelay on BSD (Roman Bogorodskiy),
    build: Fix check-aclrules in VPATH build (Jiri Denemark),
    build: Fix build with -Werror (Jim Fehlig),
    use net/if.h instead of linux/if.h (Roman Bogorodskiy),
    build: fix build without posix_fallocate (Eric Blake),
    spec: Explicitly require libgcrypt-devel (Jiri Denemark)
  • Bug Fixes:
    pci: initialize virtual_functions array pointer to avoid segfault (Laine Stump),
    node device driver: update driver name during dumpxml (Laine Stump),
    Resolve valgrind errors for nodedev cap parsing (John Ferlan),
    Resolve valgrind error in remoteConfigGetStringList() (John Ferlan),
    Resolve valgrind error in virStorageBackendCreateQemuImgCmd() (John Ferlan),
    Resolve valgrind error in virNetDevVlanParse() (John Ferlan),
    Fix vPort management: FC vHBA creation (Dennis Chen),
    bridge: don't crash on bandwidth unplug with no bandwidth (Ján Tomko),
    Plug leak in virCgroupMoveTask (Ján Tomko),
    Fix invalid read in virCgroupGetValueStr (Ján Tomko),
    qemu: fix infinite loop in OOM error path (Laine Stump),
    pci: fix dangling pointer in qemuDomainReAttachHostdevDevices (Laine Stump),
    pci: eliminate leak in OOM condition (Laine Stump),
    util: fix bug found by Coverity (Laine Stump),
    Fix possible NULL dereference during migration (Jiri Denemark),
    virsh: edit: don't leak XML string on reedit or redefine (Ján Tomko),
    qemu: don't reset PCI devices being assigned with VFIO (Laine Stump),
    pci: eliminate memory leak in virPCIDeviceReattach (Laine Stump),
    qemu: check if block I/O limits fit into long long (Ján Tomko),
    network: increase max number of routes (Laine Stump),
    lxc: Resolve issue with GetScheduler APIs for non running domain (John Ferlan),
    qemu: Resolve issue with GetScheduler APIs for non running domain (John Ferlan),
    qemu: Avoid leaking uri in qemuMigrationPrepareDirect (Jiri Denemark),
    udev: fix crash in libudev logging (Ján Tomko),
    remote: Fix client crash when URI path is empty when using ssh (Peter Krempa),
    remote: Forbid default "/session" connections when using ssh transport (Peter Krempa),
    nodedev: fix vport detection for FC HBA (Ján Tomko),
    qemu: Fix memory leak in Prepare phase (Jiri Denemark),
    virSocketAddrIsWildcard: Use IN6_IS_ADDR_UNSPECIFIED correctly (Michal Privoznik),
    Fix ordering of file open in virProcessGetNamespaces (Richard Weinberger),
    qemuDomainGetVcpusFlags: Initialize ncpuinfo (Michal Privoznik),
    virtlockd: fix socket path (Ján Tomko),
    nwfilter: grab driver lock earlier during init (bz96649) (Stefan Berger),
    Fix a invalid usage of virDomainNetDef in OpenVZ driver (Alvaro Polo),
    use virBitmapFree instead of VIR_FREE for cpumask (Ján Tomko),
    usb: don't spoil decimal addresses (Martin Kletzander)
  • Improvements:
    Allow RO connections to interface udev backend (Doug Goldstein),
    virsh: Add parenthesis into virsh nodedev-detach help (xuzhang),
    nodedev: add iommuGroup to node device object (Laine Stump),
    pci: new iommu_group functions (Laine Stump),
    network: allow <vlan> in type='hostdev' networks (Laine Stump),
    test: include qemuhotplugtest data files in source rpm (Laine Stump),
    pci: virPCIDeviceListAddCopy API (Laine Stump),
    pci: update stubDriver name in virPCIDeviceBindToStub (Laine Stump),
    pci: eliminate repetitive path constructions in virPCIDeviceBindToStub (Laine Stump),
    pci: rename virPCIParseDeviceAddress and make it public (Laine Stump),
    pci: rename virPCIDeviceGetVFIOGroupDev to virPCIDeviceGetIOMMUGroupDev (Laine Stump),
    pci: eliminate unused driver arg from virPCIDeviceDetach (Laine Stump),
    tests: Introduce qemuhotplugtest (Michal Privoznik),
    qemu: Implement support for VIR_MIGRATE_PARAM_GRAPHICS_URI (Jiri Denemark),
    Implement extensible migration APIs in qemu driver (Jiri Denemark),
    qemu: Move internals of Confirm phase to qemu_migration.c (Jiri Denemark),
    qemu: Move common parts of Prepare phase to qemu_migration.c (Jiri Denemark),
    qemu: Move internals of Begin phase to qemu_migration.c (Jiri Denemark),
    Use 1.1.0 everywhere in the documentation (Ján Tomko),
    Add polkit policy for API checks to rpm spec (Daniel Veillard),
    Configure native vlan modes on Open vSwitch ports (james robson),
    Introduce VIR_MIGRATE_PARAM_GRAPHICS_URI parameter (Jiri Denemark),
    virsh: Use extensible migration APIs (Jiri Denemark),
    python: Add bindings for extensible migration APIs (Jiri Denemark),
    Adapt virDomainMigratePeer2Peer for extensible migration APIs (Jiri Denemark),
    Adapt virDomainMigrateVersion3 for extensible migration APIs (Jiri Denemark),
    Implement extensible migration APIs in remote driver (Jiri Denemark),
    New internal migration APIs with extensible parameters (Jiri Denemark),
    Introduce migration parameters (Jiri Denemark),
    Introduce virTypedParamsCopy internal API (Jiri Denemark),
    Log input type parameters in API entry points (Jiri Denemark),
    Introduce VIR_TYPED_PARAMS_DEBUG macro for dumping typed params (Jiri Denemark),
    Introduce virTypedParamsReplaceString internal API (Jiri Denemark),
    Introduce virTypedParamsCheck internal API (Jiri Denemark),
    util: Emit proper error code in virTypedParamsValidate (Jiri Denemark),
    Rename virTypedParameterArrayValidate as virTypedParamsValidate (Jiri Denemark),
    pci: make virPCIDeviceDetach consistent in behavior (Laine Stump),
    pci: new utility functions (Laine Stump),
    pci: change stubDriver from const char* to char* (Laine Stump),
    syntax: virPCIDeviceFree is also a NOP for NULL args (Laine Stump),
    libxl: support qdisk backend (Jim Fehlig),
    libxl: Fix disk format error message (Jim Fehlig),
    Add validation that all APIs contain ACL checks (Daniel P. Berrange),
    Set process ID in system identity (Daniel P. Berrange),
    Add ACL checks into the secrets driver (Daniel P. Berrange),
    Add ACL checks into the nwfilter driver (Daniel P. Berrange),
    Add ACL checks into the node device driver (Daniel P. Berrange),
    Add ACL checks into the interface driver (Daniel P. Berrange),
    Add ACL checks into the network driver (Daniel P. Berrange),
    Add ACL checks into the storage driver (Daniel P. Berrange),
    Add ACL checks into the libxl driver (Daniel P. Berrange),
    Add ACL checks into the Xen driver (Daniel P. Berrange),
    Add ACL checks into the UML driver (Daniel P. Berrange),
    Add ACL checks into the LXC driver (Daniel P. Berrange),
    Add ACL checks into the QEMU driver (Daniel P. Berrange),
    Auto-generate helpers for checking access control rules (Daniel P. Berrange),
    Add ACL annotations to all RPC messages (Daniel P. Berrange),
    Setup default access control manager in libvirtd (Daniel P. Berrange),
    Set conn->driver before running driver connectOpen method (Daniel P. Berrange),
    Define basic internal API for access control (Daniel P. Berrange),
    netdev: accept NULL in virNetDevSetupControl (Ján Tomko),
    xen: Implement virConnectGetSysinfo (Jim Fehlig),
    libxl: Implement virConnectGetSysinfo (Jim Fehlig),
    libxl: Allow libxl to set NIC devid (Jim Fehlig),
    storage: add support for creating qcow2 images with extensions (Ján Tomko),
    conf: add features to volume target XML (Ján Tomko),
    util: add support for qcow2v3 image detection (Ján Tomko),
    qemu: add hv_vapic and hv_spinlocks support (Ján Tomko),
    conf: add vapic and spinlocks to hyperv features (Ján Tomko),
    BSD: implement bridge add/remove port and set STP (Roman Bogorodskiy),
    BSD: implement virNetDevBridgeCreate() and virNetDevBridgeDelete() (Roman Bogorodskiy),
    conf: Requires either uuid or usage of secret (Osier Yang),
    qemu: Make probing for commands declarative (Jiri Denemark),
    qemu: Make probing for events declarative (Jiri Denemark),
    libxl: support paused domain restore in virDomainRestoreFlags (Marek Marczykowski-Górecki),
    qemuDomainChangeGraphics: Check listen address change by listen type (Michal Privoznik),
    libxl: initialize device structures (Marek Marczykowski-Górecki),
    libxl: populate xenstore memory entries at startup, handle dom0_mem (Marek Marczykowski-Górecki),
    conf: split out snapshot disk XML formatting (Ján Tomko),
    storage: rework qemu-img command line generation (Ján Tomko),
    util: switch virBufferTrim to void (Ján Tomko),
    migration: Don't propagate VIR_MIGRATE_ABORT_ON_ERROR (Peter Krempa),
    migration: Make erroring out on I/O error controllable by flag (Peter Krempa),
    qemu_migration: Move waiting for SPICE migration (Michal Privoznik),
    spec: Enable KVM support on ARM (Cole Robinson),
    virsh: Support SCSI_GENERIC cap flag for nodedev-list (Osier Yang),
    nodedev: Support SCSI_GENERIC cap flag for listAllNodeDevices (Osier Yang),
    nodedev_hal: Enumerate scsi generic device (Osier Yang),
    nodedev_udev: Enumerate scsi generic device (Osier Yang),
    qemu: set QEMU_CAPS_DEVICE_VIDEO_PRIMARY cap flag in QMP detection (Guannan Ren),
    nodedev_udev: changes missed by commit 1aa0ba3cef (Osier Yang),
    nodedev_udev: Refactor udevGetDeviceType (Osier Yang),
    nodedev: Expose sysfs path of device (Osier Yang),
    Move virGetUserEnt() to where its needed (Doug Goldstein),
    BSD: implement virNetDevTapCreate() and virNetDevTapDelete() (Roman Bogorodskiy),
    Make virNetDevSetupControl() public. (Roman Bogorodskiy),
    LXC: s/chroot/chdir in lxcContainerPivotRoot() (Richard Weinberger),
    Implement dispose method for libxlDomainObjPrivate (Frediano Ziglio),
    libxl: allow only 'ethernet' and 'bridge' interfaces, allow script there (Marek Marczykowski-Górecki),
    qemu: allow restore with non-migratable XML input (Ján Tomko),
    libxl: set bootloader for PV domains if not specified (Jim Fehlig),
    libxl: Report connect type as Xen (Jim Fehlig),
    schema: simplify RNG pattern, remove superfluous <optional> (Claudio Bley),
    libvirt_private.syms: add virProcessGetStartTime (Ján Tomko),
    qemu: Forbid migration of machines with I/O errors (Peter Krempa),
    qemu: Cancel migration if guest encoutners I/O error while migrating (Peter Krempa),
    qemu_migrate: Dispose listen address if set from config (Michal Privoznik),
    selinux: assume 's0' if the range is empty (Ján Tomko),
    storage: fix description of versionOffset (Martin Kletzander),
    spec: Drop Requires: vbox (Cole Robinson),
    Prefer VIR_STRDUP over virAsprintf(&dst, "%s", str) (Michal Privoznik),
    qemu: Implement new QMP command for cpu hotplug (Peter Krempa),
    qemu: Implement support for VIR_DOMAIN_VCPU_AGENT in qemuDomainSetVcpusFlags (Peter Krempa),
    qemu: Implement request of vCPU state using the guest agent (Peter Krempa),
    API: Introduce VIR_DOMAIN_VCPU_AGENT, for agent based CPU hot(un)plug (Peter Krempa),
    qemu_agent: Introduce helpers for agent based CPU hot(un)plug (Peter Krempa),
    qemu: Use bool instead of int in qemuMonitorSetCPU APIs (Peter Krempa),
    virsh-domain-monitor: Remove ATTRIBUTE_UNUSED from a argument (Peter Krempa),
    Add support for VirtualBox 4.2 APIs (ryan woodsmall),
    qemuDomainMigrateGraphicsRelocate: Use then new virSocketAddrIsWildcard (Michal Privoznik),
    virsocket: Introduce virSocketAddrIsWildcard (Michal Privoznik),
    iscsi: pass hostnames to iscsiadm instead of resolving them (Ján Tomko),
    qemu: Report the offset from host UTC for RTC_CHANGE event (Osier Yang),
    qemu: simplify CPU command line parsing (Ján Tomko),
    qemu: change two-state int parameters to bool (Ján Tomko),
    nwfilter: change two-state int parameters to bool (Ján Tomko),
    Remove redundant two-state integers (Ján Tomko),
    Replace two-state local integers with bool (Ján Tomko),
    storage: Avoid unnecessary ternary operators and refactor the code (Peter Krempa),
    openvz: Fix code coverage issue in OpenVZ driver (Alvaro Polo),
    qemu: Reformat listen address prior to checking (Michal Privoznik),
    Ensure non-root can read /proc/meminfo file in LXC containers (Daniel P. Berrange),
    storage: Provide better error message if metadata pre-alloc is unsupported (Peter Krempa),
    storage: Clean up function header and reflow error message (Peter Krempa),
    storagevolxml2argvtest: Report better error messages on test failure (Peter Krempa),
    maint: don't use config.h in .h files (Eric Blake),
    qemu: Abstract code for the cpu controller setting into a helper (Osier Yang),
    storage: Forbid to shrink the vol's capacity if no --shrink is specified (Osier Yang),
    storage: Support preallocate the new capacity for vol-resize (Osier Yang),
    snapshot: remove mutually exclusive memory and disk-only duplicate check (Guannan Ren),
    virsh: Allow attach-disk to specify disk wwn (Osier Yang),
    tests: fix typo in securityselinuxtest (Ján Tomko),
    virsh: Obey pool-or-uuid spec when creating volumes (Jiri Denemark),
    libvirt-qemu: Dispatch errors from virDomainQemuAgentCommand() (Peter Krempa),
    qemu: Properly report guest agent errors on command passthrough (Peter Krempa),
    virsh-domain: Report errors and don't deref NULL in qemu-agent-command (Peter Krempa),
    RPC: Support up to 16384 cpus on the host and 4096 in the guest (Peter Krempa),
    virsh iface-bridge: Ignore delay if stp is turned off (Jiri Denemark),
    Fix warning about using an uninitialized next_unit value (Jiri Denemark),
    virsh-domain: Add --live, --config, --current logic to cmdAttachInterface (Peter Krempa),
    virsh-domain: Add --live, --config, --current logic to cmdAttachDisk (Peter Krempa),
    virsh-domain: Add --live, --config, --current logic to cmdAttachDevice (Peter Krempa)
  • Cleanups:
    Get rid of useless VIR_STORAGE_FILE_FEATURE_NONE (Ján Tomko),
    configure: Remove unused brctl check (Cole Robinson),
    storage_backend: Drop unused code (Cole Robinson),
    Remove legacy code for single-instance devpts filesystem (Daniel P. Berrange)

1.0.6: Jun 03 2013

  • Features:
    Move VirtualBox driver into libvirtd (Daniel P. Berrange),
    Support for static routes on a virtual bridge (Gene Czarcinski),
    Various improvement for hostdev SCSI support (Osier Yang and Han Cheng),
    Switch to VIR_STRDUP and VIR_STRNDUP (Michal Privoznik),
    Various cleanups and improvement in Xen and LXC drivers (Daniel P. Berrange)
  • Documentation:
    Document that runtime changes may be lost after S4 suspend (Jiri Denemark),
    domain: /dev/urandom isn't a valid rng patch (Cole Robinson),
    formatdomain: fix links in the table of contents (Ján Tomko),
    add another user (Eric Blake),
    datatypes: fix virGetStoragePool's comment (Ján Tomko),
    Expand documentation for LXC driver (Daniel P. Berrange),
    Fix/update syntax in Sysinfo/SMBIOS description (John Ferlan),
    Update formatdomain for lifecycle events (John Ferlan),
    Fix the wrong links in secret documentation (Osier Yang),
    Add the missed usage type 'iscsi' (Osier Yang),
    Add docs about cgroups layout and usage (Daniel P. Berrange),
    Point users to Virt-Viewer MSI installers for Windows builds (Daniel P. Berrange),
    Fix namespace bugs in API docs, todo page & hv support page (Daniel P. Berrange),
    Fix a few more docs XSL bugs related to the TOC (Daniel P. Berrange),
    Fix docs generator regression in previous commit (Daniel P. Berrange),
    Fix multiple formatting problems in HTML docs (Daniel P. Berrange),
    fix 'since' for socket path generation (Ján Tomko)
  • Portability:
    vbox: define DYNLIB_NAME for kFreeBSD (Guido Günther),
    build: skip qemu in tests when !WITH_QEMU (Eric Blake),
    build: use correct rpc.h for virtlockd (Eric Blake),
    build: work around cygwin header bug (Eric Blake),
    build: cast [ug]id_t when printing (Eric Blake),
    build: port qemu to cygwin (Eric Blake),
    build: use correct rpc.h for lockd (Eric Blake),
    build: work around broken sasl header (Eric Blake),
    build: fix build without libvirtd (Eric Blake),
    build: fix build with newer gnutls (Eric Blake),
    build: fix build with older gcc (Eric Blake),
    qemu: Fix build without gnutls (Jiri Denemark),
    spec: Build vbox packages only for x86 architectures (Viktor Mihajlovski),
    Add missing c-ctype.h to virfile.c (Daniel P. Berrange),
    test: fix VPATH fchosttest failure (Viktor Mihajlovski),
    libxl: fix build with Xen4.3 (Jim Fehlig),
    build: Fix check-driverimpls in VPATH (Jiri Denemark),
    util: Fix build without devmapper (Jiri Denemark),
    FreeBSD: disable buggy -fstack-protector-all (Roman Bogorodskiy),
    build: avoid gcrypt deprecation warnings (Roman Bogorodskiy),
    build: avoid shadowed variable in fdstreamtest (Eric Blake),
    fix virNetDevSetMAC and virNetDevExists on BSD (Roman Bogorodskiy),
    Disable some URI tests on older libxml2 (Daniel P. Berrange),
    Fix build of python bindings on Python 2.4 (Daniel P. Berrange),
    build: fix build with old polkit0 (Jim Fehlig),
    Fixup rpcgen code on kFreeBSD too (Guido Günther),
    build: avoid non-portable cast of pthread_t (Eric Blake),
    build: Fix build when WITH_HAL is defined (Jim Fehlig),
    build: fix mingw build of vbox (Eric Blake),
    build: fix mingw build of virprocess.c (Eric Blake)
  • Bug Fixes:
    conf: Generate address for scsi host device automatically (Osier Yang),
    qemu: prevent termination of guests w/hostdev on driver reconnect (Laine Stump),
    qemu: escape literal IPv6 address in NBD migration (Ján Tomko),
    Check for existence of interface prior to setting terminate flag (John Ferlan),
    Resolve memory leak found by valgrind (John Ferlan),
    qemu: snapshot: Don't kill access to disk if snapshot creation fails (Peter Krempa),
    virsh: migrate: Don't disallow --p2p and --migrateuri (Cole Robinson),
    qemu: Don't report error on successful media eject (Cole Robinson),
    qemu: save domain state to XML after reboot (Sergey Fionov),
    esx: Fix dynamic VI object type detection (Matthias Bolte),
    storage_conf: Don't leak "uuid" in virStoragePoolDefParseAuthCephx (Osier Yang),
    storage_conf: Fix the wrong error message (Osier Yang),
    Fix blkdeviotune for shutoff domain (Martin Kletzander),
    virsh: Fix regression of vol-resize (Osier Yang),
    xen: Resolve Coverity FORWARD_NULL issue (John Ferlan),
    qemu: fix NBD migration to hosts with IPv6 enabled (Ján Tomko),
    conf: fix use after free in virChrdevOpen (Ján Tomko),
    virNetMessageSaveError: Fix copy and paste error (Michal Privoznik),
    virNWFilterHashTablePut: Free the correct variable (Michal Privoznik),
    umlConnectTapDevice: initialize tapfd variable (Michal Privoznik),
    remote: fix dom->id after virDomainCreateWithFlags (Marek Marczykowski),
    virsh: Fix virDomainFree for NULL domain in blkdeviotune (Martin Kletzander),
    virNetDevTapCreate: Fail on systems not supporting IFF_MULTI_QUEUE (Michal Privoznik),
    cgroup: be robust against cgroup movement races (Eric Blake),
    shunloadtest: Resolve Coverity CHECKED_RETURN error (John Ferlan),
    xencapstest: Resolve Coverity CHECKED_RETURN error (John Ferlan),
    qemu: fix a typo in qemuAddSharedDevice (Guannan Ren),
    qemuDomainChangeEjectableMedia: Unlock domain while waiting for event (Michal Privoznik),
    LXC: fix memory leak in virLXCControllerSetupDevPTS (Gao feng),
    LXC: remove unnecessary check on root filesystem (Gao feng),
    esx: Fix error reporting in esxVI_LookupManagedObjectHelper (Matthias Bolte),
    Fix failure to detect missing cgroup partitions (Daniel P. Berrange),
    libxl: fix leaking libxl events (Jim Fehlig),
    qemu: Fix cgroup handling when setting VCPU BW (Martin Kletzander),
    Don't mount selinux fs in LXC if selinux is disabled (Daniel P. Berrange),
    Fix LXC startup when /var/run is an absolute symlink (Daniel P. Berrange),
    conf: Fix the bug of disk->copy_on_read formating (Osier Yang),
    daemon: fix leak after listing all volumes (Ján Tomko),
    qemu: Fix crash in migration of graphics-less guests. (Viktor Mihajlovski),
    Adjust improperly formatted <sysinfo> uuid (John Ferlan),
    storage: Ensure 'qemu-img resize' size arg is a 512 multiple (Christophe Fergeau),
    spec: fix outdated comment (Eric Blake),
    Forbid use of ':' in RBD pool names (Daniel P. Berrange),
    qemu: fix bad free (Eric Blake),
    Fix starting domains when kernel has no cgroups support (Jim Fehlig),
    Fix error handling of readdir() in virFileLoopDeviceOpen (Daniel P. Berrange),
    util: Fix regression introduced by commit 4360a098441 (Osier Yang),
    util: Fix regression of wwn reading (Osier Yang),
    build: fix use of mmap (Eric Blake),
    conf: don't crash on a tpm device with no backends (Ján Tomko),
    don't mention disk controllers in generic controller errors (Ján Tomko),
    iscsi: don't leak portal string when starting a pool (Ján Tomko),
    virsh: Resolve Coverity 'MISSING_BREAK' (John Ferlan),
    lxc: Coverity false positive USE_AFTER_FREE (John Ferlan),
    Don't allow renaming of domains by the backdoor (Daniel P. Berrange),
    qemu: fix stupid typos in VFIO cgroup setup/teardown (Laine Stump),
    Ignore 'uri' parameter in lockd driver (Daniel P. Berrange),
    network: fix network driver startup for qemu:///session (Laine Stump),
    Fix warning about unsupported cookie flags in QEMU driver (Daniel P. Berrange),
    Fix release of resources with lockd plugin (Daniel P. Berrange),
    Fix F_DUPFD_CLOEXEC operation args (Daniel P. Berrange),
    build: fix make rpm failure (Laine Stump),
    Fix potential use of undefined variable in remote dispatch code (Daniel P. Berrange),
    virInitctlRequest: unbreak make syntax check (Guido Günther),
    virInitctlRequest: unbreak make syntax check (Guido Günther)
  • Improvements:
    nodedev_hal: Modernize the function's style (Osier Yang),
    Introduce virFilePrintf() as a portable fprintf() (Daniel P. Berrange),
    qemu: migration: error if tunnelled + storage specified (Cole Robinson),
    qemu: migration: Improve p2p error if we can't open conn (Cole Robinson),
    storage_conf: Use uid_t/gid_t instead of int to cast the value (Osier Yang),
    storage_conf: Improve error messages (Osier Yang),
    storage_conf: Use NULLSTR instead (Osier Yang),
    storage_conf: Improve the memory deallocation of virStorageVolDefParseXML (Osier Yang),
    storage_conf: Improve the memory deallocation of pool def parsing (Osier Yang),
    syntax: fix broken error message in previous patch (Eric Blake),
    util: fix the VIR_STRDUP when src is NULL (yangdongsheng),
    Adapt to new VIR_STRNDUP behavior (Michal Privoznik),
    virStrndup: Accept negative values as string length (Michal Privoznik),
    storage_conf: Fix the error type (Osier Yang),
    storage_conf: Put "%s" at the same line with error type (Osier Yang),
    storage_conf: Use xmlStrEqual instead of STREQ (Osier Yang),
    storage_conf: Remove the useless casting (Osier Yang),
    syntax-check: ignore all quoted strings in bracket-spacing (Ján Tomko),
    nwfilter: Remove error report in virNWFilterDHCPSnoopEnd (Stefan Berger),
    cgroups: Do not enforce nonexistent controllers (Viktor Mihajlovski),
    Introduce syntax-check rule to prefer VIR_STRDUP over strdup (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in tools/virsh.c (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/util/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/util/vircgroup.c (Michal Privoznik),
    virCgroupAddTaskStrController: s/-1/-ENOMEM/ (Michal Privoznik),
    conf: add missing OOM errors (Ján Tomko),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/xenxs/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/xenapi/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/xen/* (Michal Privoznik),
    Fix the build failure (Osier Yang),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/security/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/rpc/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/remote/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/qemu/* (Michal Privoznik),
    virsh: omit OPTION section in 'virsh help' if no option exists (Zhang Xiaohe),
    Change virConnectDomainEventGraphicsCallback signature (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/openvz/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/conf/* (Michal Privoznik),
    qemu: Enable multiqueue network (Michal Privoznik),
    qemu: Adapt qemuBuildInterfaceCommandLine to to multiqueue net (Michal Privoznik),
    qemu: Move interface cmd line construction into a separate function (Michal Privoznik),
    Introduce /domain/devices/interface/driver/@queues attribute (Michal Privoznik),
    qemu: add ', share=<policy>' to qemu commandline (Guannan Ren),
    conf: add 'sharePolicy' attribute to graphics element for vnc (Guannan Ren),
    qemu: new vnc display sharing policy caps flag (Guannan Ren),
    vbox: fix VIR_STRDUP value check (Ján Tomko),
    syntax-check: Add the rule to forbid whitespace before ";" (Osier Yang),
    Fix the syntax-check failure (Osier Yang),
    interface: list all interfaces with flags == 0 (Guannan Ren),
    Convert Xen domain core dump driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain stats/peek driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain scheduler driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain autostart driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain device hotplug driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain VCPU driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain create/define/getxml/migration APIs to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain managed save driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain property driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain lifecycle driver methods to use virDomainDefPtr (Daniel P. Berrange),
    Convert Xen domain lookup driver methods to use virDomainDefPtr (Daniel P. Berrange),
    qemu: Don't remove the "return 0" (Osier Yang),
    esx: Replace almost all esxVI_String_DeepCopyValue vith VIR_STRDUP (Matthias Bolte),
    vmware: Restore OOM error reporting in vmwareCopyVMXFileName (Matthias Bolte),
    maint: enforce correct copyright usage (Eric Blake),
    maint: refer to correct license file (Eric Blake),
    maint: follow recommended practice for using LGPL (Eric Blake),
    maint: use LGPL correctly (Eric Blake),
    openvzDomainSetNetwork: use virCommand (Michal Privoznik),
    qemu: Add callback struct for qemuBuildCommandLine (Osier Yang),
    storage_conf: Improve the coding style in storage_conf.h (Osier Yang),
    storage_conf: Fix indentions in storage_conf.c (Osier Yang),
    storage_conf: Fix the coding stype in storage_conf.c (Osier Yang),
    qemu: Abstract code for cpuset controller setting into a helper (Osier Yang),
    qemu: Abstract code for devices controller setting into a helper (Osier Yang),
    qemu: Abstract code for memory controller setting into a helper (Osier Yang),
    qemu: Abstract the code for blkio controller setting into a helper (Osier Yang),
    Add libvirt-daemon-vbox & libvirt-daemon-driver-vbox RPMs (Daniel P. Berrange),
    Include GNULIB mkdtemp module (Daniel P. Berrange),
    Set PKG_CONFIG_LIBDIR in autobuild.sh (Daniel P. Berrange),
    qemu: report useful error failing to destroy domain gracefully (Guannan Ren),
    qemu: Check conflicts for shared scsi host device (Osier Yang),
    Re-add selinux/selinux.h to lxc_container.c (Daniel P. Berrange),
    schema: make source optional in volume XML (Ján Tomko),
    schema: require target path in storage pool xml (Ján Tomko),
    qemu: Change values of disk discard (Osier Yang),
    qemu: Implement support for locking domain's memory pages (Jiri Denemark),
    Add support for locking domain's memory pages (Jiri Denemark),
    Fix build with VirtualBox (Jiri Denemark),
    qemu: Set unpriv_sgio for scsi host device (Osier Yang),
    qemu: Refactor qemuSetUnprivSGIO to support scsi host device (Osier Yang),
    qemu: Move qemuSetUnprivSGIO into qemu_conf.c (Osier Yang),
    conf: Introduce sgio for hostdev (Osier Yang),
    Rename virDomainDiskSGIO to virDomainDeviceSGIO (Osier Yang),
    qemu: Manage shared device entry for scsi host device (Osier Yang),
    qemu: Refactor the helpers to track shared scsi host device (Osier Yang),
    utils: Add a helper to get the device name that sg device mapped to (Osier Yang),
    qemu: Rename qemu_driver->sharedDisks to qemu_driver->sharedDevices (Osier Yang),
    conf: Introduce <shareable> for hostdev (Osier Yang),
    string: test VIR_STRDUP (Eric Blake),
    virsh: lookup interface by name or mac other than one by one (Guannan Ren),
    nwfilter: check for inverted ctdir (Stefan Berger),
    Validate the bios_date format for <sysinfo> (John Ferlan),
    Remove obsolete skipRoot flag in LXC driver (Daniel P. Berrange),
    Stop passing around old root directory prefix (Daniel P. Berrange),
    Remove obsolete pivotRoot flag in LXC driver (Daniel P. Berrange),
    qemu: Support discard for disk (Osier Yang),
    Handle the domain event 'on_reboot' and 'on_poweroff' settings (John Ferlan),
    Adjust comments to describe on_poweroff and on_reboot action (John Ferlan),
    Adjust usage of qemu -no-reboot and -no-shutdown options (John Ferlan),
    qemu: Add VNC WebSocket support (Martin Kletzander),
    Add VNC WebSocket support (Martin Kletzander),
    qemu: New XML to disable memory merge at guest startup (Osier Yang),
    qemu: detect -machine mem-merge capability (Eric Blake),
    Rename rbd-invalid.xml to rbd-no-colon.xml (Daniel P. Berrange),
    tests: Add fchostdata in EXTRA_DIST (Osier Yang),
    virsh: Pretty the output of qemu-agent-command (Osier Yang),
    virsh: Use vshPrint instead of printf (Osier Yang),
    Fix invalid argument reference in virnetdev.h (Martin Kletzander),
    Don't duplicate compiler warning flags when linking (Daniel P. Berrange),
    Only pass -export-dynamic to linker, not compiler (Daniel P. Berrange),
    Correctly detect warning flags with clang (Daniel P. Berrange),
    Ignore cast alignment warnings in inotify code for Xen. (Daniel P. Berrange),
    Workaround issue with clang and inline functions with static vars (Daniel P. Berrange),
    Ensure consistent enablement of gcc 'diagnostic' pragma (Daniel P. Berrange),
    qemu: query command line options in QMP (Eric Blake),
    qemu: simplify string cleanup (Eric Blake),
    qemu: use bool in monitor struct (Eric Blake),
    json: support removing a value from an object (Eric Blake),
    Don't overwrite useful message when creating macvlan fails (Daniel P. Berrange),
    Remove & ban use of select() for waiting for I/O (Daniel P. Berrange),
    qemu: Add hotplug support for scsi host device (Han Cheng),
    .gitignore: add fchosttest (Ján Tomko),
    qemu: Refactor helpers for USB device attachment (Osier Yang),
    Escaping leading '.' in cgroup names (Daniel P. Berrange),
    qemu: Introduce activeScsiHostdevs list for scsi host devices (Han Cheng),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/vbox/* (Michal Privoznik),
    Support NBD backed disks/filesystems in LXC driver (Daniel P. Berrange),
    Add 'nbd' as a valid filesystem driver type (Daniel P. Berrange),
    Add a helper API for setting up a NBD device with qemu-nbd (Daniel P. Berrange),
    Re-arrange code setting up ifs/disk loop devices for LXC (Daniel P. Berrange),
    Add support for storage format in FS <driver> (Daniel P. Berrange),
    security_apparmor.c: Include virscsi.h (Michal Privoznik),
    security: Manage the security label for scsi host device (Osier Yang),
    qemu: Allow the scsi-generic device in cgroup (Han Cheng),
    qemu: Support bootindex for scsi host device (Osier Yang),
    Introduce <readonly> for hostdev (Osier Yang),
    rng: Interleave hostdev elements (Osier Yang),
    qemu: Build qemu command line for scsi host device (Han Cheng),
    utils: util functions for scsi hostdev (Han Cheng),
    qemu: New cap flags for scsi-generic (Han Cheng),
    node_device: Clean up unused macros (Osier Yang),
    conf: Generic XMLs for scsi hostdev (Han Cheng),
    tests: Add tests for fc_host (Osier Yang),
    util: Honor the passed sysfs_prefix (Osier Yang),
    util: Update the comment for virGetFCHostNameByWWN (Osier Yang),
    util: Change virIsCapable* to return bool (Osier Yang),
    util: Don't miss the slash in constructed path (Osier Yang),
    build: update to latest gnulib, for syntax-check (Eric Blake),
    Update hellolibvirt to demo virGetLastErrorMessage() (Daniel P. Berrange),
    Add a test case for the fdstream file read/write code (Daniel P. Berrange),
    Allow the iohelper path to be customized by test programs (Daniel P. Berrange),
    Add a virGetLastErrorMessage() function (Daniel P. Berrange),
    Fix iohelper usage with streams opened for read (Daniel P. Berrange),
    Cope with missing swap cgroup controls (Daniel P. Berrange),
    util: move virFile* functions from virutil.c to virfile.c (Laine Stump),
    util: fix virFileOpenAs return value and resulting error logs (Laine Stump),
    Build breaker - requires VIR_FROM_THIS (John Ferlan),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/test/* (Michal Privoznik),
    virGetStorageVol: Don't ignore NULL pool name (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in tests/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/storage/* (Michal Privoznik),
    dom event example: Add error check to impl call (Jesse J. Cook),
    dom event example: init before register event impl (Jesse J. Cook),
    conf: Fix typo in error message in ABI stability check (Peter Krempa),
    tests: use portable shell code (Eric Blake),
    Replace 'goto clean' with 'goto cleanup' in apparmor code (Daniel P. Berrange),
    Replace list of driver source files with variables (Daniel P. Berrange),
    Fix naming of methods in ESX storage backends to follow public APIs (Daniel P. Berrange),
    Skip virNWFilterTechDriver when validating API naming (Daniel P. Berrange),
    Replace 'goto cleanup' with 'goto error' in udev interface driver (Daniel P. Berrange),
    Replace 'goto err' with 'goto cleanup' in udev interface driver (Daniel P. Berrange),
    tests: files named '.*-invalid.xml' should fail validation (Ján Tomko),
    Simplify the Xen domain stats/peek / node memory driver methods (Daniel P. Berrange),
    Simplify the Xen domain autostart driver method (Daniel P. Berrange),
    Simplify the Xen domain scheduler parameter driver methods (Daniel P. Berrange),
    Simplify the Xen domain attach/dettach driver methods (Daniel P. Berrange),
    Simplify the Xen domain define/undefine driver methods (Daniel P. Berrange),
    Simplify the Xen domain start driver method (Daniel P. Berrange),
    Simplify the Xen driver define domain driver methods (Daniel P. Berrange),
    Simplify the Xen domain migration driver methods (Daniel P. Berrange),
    Simplify the Xen domain get XML driver method (Daniel P. Berrange),
    Simplify the Xen domain VCPU driver methods (Daniel P. Berrange),
    Simplify the Xen domain save/restore driver methods (Daniel P. Berrange),
    Simplify the Xen domain get info/state driver methods (Daniel P. Berrange),
    Simplify the Xen domain get/set (max) memory driver methods (Daniel P. Berrange),
    Remove Xen get hostname driver method (Daniel P. Berrange),
    Simplify the Xen domain get OS type driver method (Daniel P. Berrange),
    Simplify the Xen domain destroy driver method (Daniel P. Berrange),
    Simplify the Xen domain shutdown/reboot driver methods (Daniel P. Berrange),
    Simplify the Xen domain suspend/resume driver methods (Daniel P. Berrange),
    Simplify the Xen domain is persistent driver method (Daniel P. Berrange),
    Simplify the Xen domain lookup driver methods (Daniel P. Berrange),
    Simplify the Xen domain create driver method (Daniel P. Berrange),
    Simplify the Xen count/list domains driver methods (Daniel P. Berrange),
    Simplify the Xen get max vcpus / node get info driver methods (Daniel P. Berrange),
    Simplify the Xen get version driver method (Daniel P. Berrange),
    Simplify the Xen get type driver method (Daniel P. Berrange),
    Simplify opening of Xen drivers (Daniel P. Berrange),
    Remove pointless GET_PRIVATE macro from Xen driver (Daniel P. Berrange),
    Remove VIR_CONNECT_RO checks from xen drivers (Daniel P. Berrange),
    Remove xen driver checks for priv->handle < 0 (Daniel P. Berrange),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/vmx/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/vmware/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/uml/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/secret/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/phyp/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/parallels/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/nwfilter/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/interface/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/node_device/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/network/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/lxc/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/locking/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/libxl/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/hyperv/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/esx/* (Michal Privoznik),
    Adapt to VIR_STRDUP and VIR_STRNDUP in src/cpu/* (Michal Privoznik),
    Delete udevFreeIfaceDef function in udev interface driver (Daniel P. Berrange),
    maint: update to latest gnulib (Eric Blake),
    Unmerge attach/update/modify device APIs in drivers (Daniel P. Berrange),
    Pull parsing of migration xml up into QEMU driver APIs (Daniel P. Berrange),
    Fix naming of some node device APIs (Daniel P. Berrange),
    Separate internal node suspend APIs from public API (Daniel P. Berrange),
    Separate internal node device APIs from public API (Daniel P. Berrange),
    Separate virGetHostname() API contract from driver APIs (Daniel P. Berrange),
    Include process start time when doing polkit checks (Daniel P. Berrange),
    Rename "security context" to "selinux context" (Daniel P. Berrange),
    Fix possible undefined value in check-symsorting.pl (Daniel P. Berrange),
    storage: Skip inactive lv volumes (Osier Yang),
    string: make VIR_STRDUP easier to use (Eric Blake),
    alloc: make VIR_APPEND_ELEMENT safer (Eric Blake),
    syntax-check: forbid virBufferAsprintf with string literals (Ján Tomko),
    get rid of virBufferAsprintf where possible (Ján Tomko),
    qemu: allocate network connections sooner during domain startup (Laine Stump),
    Ensure stub todo.html.in file is HTML5 (Daniel P. Berrange),
    qemu: Enable the capability bit for -no-kvm-pit-reinjection on x86 only (Boris Fiuczynski),
    rpc: message related sizes enlarged (Daniel Hansel),
    qemu: Do fake auto-allocation of ports when generating native command (Peter Krempa),
    spec: proper soft static allocation of qemu uid (Eric Blake),
    build: always include libvirt_lxc.syms in tarball (Eric Blake),
    Adapt to VIR_STRDUP and VIR_STRNDUP in daemon/* (Michal Privoznik),
    virstring: Introduce VIR_STRDUP and VIR_STRNDUP (Michal Privoznik),
    Make detect_scsi_host_caps a function on all architectures (Guido Günther),
    More paranoid initialization of 'nparams' variable in dispatch code (Daniel P. Berrange),
    Fix format string handling in network driver (Daniel P. Berrange),
    esx: Reduce code duplication in generator (Matthias Bolte),
    build: avoid useless virAsprintf (Eric Blake),
    build: always include sanitytest in tarball (Eric Blake),
    util: fix compile errors caused by moving string functions (Laine Stump),
    virutil: Move string related functions to virstring.c (Michal Privoznik),
    qemu: Generate agent socket path if missing (Michal Privoznik),
    build: fix FreeBSD build (Eric Blake)
  • Cleanups:
    Storage: Fix the indention of rbd test file (Osier Yang),
    qemu: Fix damaged whitespace (Peter Krempa),
    Properly indent function's opening bracket (Martin Kletzander),
    build: fix typo in earlier commit (Eric Blake),
    build: drop unused variable (Eric Blake),
    syntax-check: mandate space after mid-line semicolon (Eric Blake),
    syntax: prefer space after semicolon in for loop (Eric Blake),
    security_dac: Fix the coding style (Osier Yang),
    nwfilter: Change the comment style (Osier Yang),
    src/*.[ch]: Remove the whitespace before ";" (Osier Yang),
    src/locking: Remove the whitespace before ";" (Osier Yang),
    python: Remove the whitespace before ";" (Osier Yang),
    examples: Remove the whitespace before ';' (Osier Yang),
    src/lxc: Remove the whitespace before ";" (Osier Yang),
    src/remote: Remove the whitespace before ";" (Osier Yang),
    src/rpc: Remove the whitespace before ";" (Osier Yang),
    src/utils: Remove the whitespace before ";" (Osier Yang),
    tests/: Remove the whitespace before ";" (Osier Yang),
    daemon: Remove the whitespace before ";" (Osier Yang),
    tools: Remove the whitespace before ";" (Osier Yang),
    src/storage: Remove the whitespace before ';' (Osier Yang),
    src/security: Remove the whitespace before ';' (Osier Yang),
    src/xen: Remove the whitespace before ';' (Osier Yang),
    src/vmware: Remove the whitespace before ';' (Osier Yang),
    src/qemu: Remove the whitespace before ';' (Osier Yang),
    src/interface: Remove the whitespace before ';' (Osier Yang),
    src/parallels: Remove the whitespace before ';' (Osier Yang),
    src/uml: Remove the whitespace before ';' (Osier Yang),
    src/openvz: Remove the whitespace before ';' (Osier Yang),
    src/node_device: Remove the whitespace before ';' (Osier Yang),
    src/phyp: Remove the whitespace before ';' (Osier Yang),
    src/nwfilter: Remove the whitespace before ';' (Osier Yang),
    src/xenxs: Remove the whitespace before ';' (Osier Yang),
    src/vbox: Remove the whitespace before ';' (Osier Yang),
    src/test: Remove the whitespace before ';' (Osier Yang),
    src/conf: Remove the whitespace before ';' (Osier Yang),
    src/libxl: Remove the whitespace before ';' (Osier Yang),
    src/network: Remove the whitespace before ';' (Osier Yang),
    LXC: move the comments to the proper place (Gao feng),
    conf: Improve the coding style (Osier Yang),
    tests: Sort the EXTRA_DIST list (Osier Yang),
    libvirt.c: Fix the indention (Osier Yang),
    conf: Remove the unrelated comment (Osier Yang),
    build: clean up stray files found by 'make distcheck' (Eric Blake),
    Remove redundant () in expression (Daniel P. Berrange)

1.0.5: May 02 2013

  • Features:
    Add NVRAM device (Li Zhang),
    Add XML config for resource partitions (Daniel P. Berrange),
    Add support for TPM (Stefan Berger),
    NPIV storage migration support (Osier Yang)
  • Documentation:
    Fix closing tag in snapshot documentation (Christophe Fergeau),
    Fix typo in augeas comment (Martin Kletzander),
    Fix VIR_DOMAIN_EVENT_ID_PMSUSPEND capitalization in API doc (Christophe Fergeau),
    Improve /domainsnapshot/disks/disk@snapshot doc (Christophe Fergeau),
    fix memballoon examples (Ján Tomko),
    Clarify usage of SELinux baselabel (Peter Krempa),
    fix usage of 'onto' (Eric Blake),
    Update HACKING (Osier Yang),
    conf: fix comment about parsing graphics listen address (Ján Tomko),
    lib: Fix docs about return value of virDomainGetVcpusFlags() (Peter Krempa),
    virsh: Document that using incomplete XML files may have unexpected results (Peter Krempa),
    fix typo when using Kerberos principals (Eric Blake),
    use MiB/s instead of Mbps for migration speed (Ján Tomko),
    Add the missed <pre> tag (Osier Yang),
    virsh: Fix typo in docs (Peter Krempa),
    manual: Fix copy-paste errors (Martin Kletzander),
    manual: Add info about migrateuri in virsh manual (Martin Kletzander)
  • Portability:
    S390: Do not generate a default USB controller (Viktor Mihajlovski),
    S390: Mention changed USB behavior (Viktor Mihajlovski),
    build: fix cygwin build in virnetdev (Eric Blake),
    portability: handle ifreq differences in virnetdev (Roman Bogorodskiy),
    qemu: fix build error with older platforms (Eric Blake),
    Fix compilation error in util/vircgroup.c (Stefan Berger),
    Conditionally compile storagevolxml2argvtest (Daniel P. Berrange),
    Fix signature of dummy virNetlinkCommand stub (Daniel P. Berrange),
    Add empty stub for virThreadCancel on Win32 (Daniel P. Berrange),
    Don't enable -fPIE on Win32 platforms (Daniel P. Berrange),
    spec: Require pod2man when running autoreconf (Jiri Denemark),
    Avoid cast alignment warnings in port allocator test (Daniel P. Berrange)
  • Bug Fixes:
    pci: autolearn name of stub driver, remove from arglist (Laine Stump),
    ESX: Fix DISPATCH_FREE generation code to free all extended objects (Ata E Husain Bohra),
    qemu: fix failure to start with spice graphics and no tls (Laine Stump),
    Need to call virFreeError after virSaveLastError (John Ferlan),
    libvirt-guests: status: return non-zero when stopped (Ján Tomko),
    security driver: eliminate memory leaks in failure paths (Laine Stump),
    libxl: Fix double-dispose of libxl domain config (Jim Fehlig),
    virsh: fix incorrect argument errors for long options (Ján Tomko),
    network: Don't remove transient network if creating of config file fails (Peter Krempa),
    qemu: prevent invalid reads in qemuAssignDevicePCISlots (Ján Tomko),
    qemu: don't assign a PCI address to 'none' USB controller (Ján Tomko),
    fix segfault during virsh save in pv guest (Bamvor Jian Zhang),
    conf: reject controllers with duplicate indexes (Ján Tomko),
    fix typo introduced by 90430791 (Bamvor Jian Zhang),
    Fix usb master startport parsing (Martin Kletzander),
    qemu_conf: Don't discard strdup OOM error (Michal Privoznik),
    util: Error out if the numa nodeset is out of range (Osier Yang),
    selinux: Don't mask errors of virSecuritySELinuxGenNewContext (Peter Krempa),
    qemu: Fix the wrong expression (Osier Yang),
    audit: properly encode device path in cgroup audit (Eric Blake),
    network: bridge_driver: don't lose transient networks on daemon restart (Peter Krempa),
    qemu: fix default spice password setting (Ján Tomko),
    Fix build breaker with ATTRIBUTE_NONNULL defs (John Ferlan),
    Resolve valgrind error (John Ferlan),
    Do more complete initialization of libgcrypt (Daniel P. Berrange),
    qemu: Set correct migrate host in client_migrate_info (Michal Privoznik),
    qemu: fix crash in qemuOpen (Ján Tomko),
    conf: fix error for parallel port mismatch (Ján Tomko),
    conf: fix a memory leak when parsing nat port XML nodes (Guannan Ren),
    conf: Fix race between looking up a domain object and freeing it (Peter Krempa),
    Fix crash in virNetDevGetVirtualFunctions (Laine Stump),
    schemas: Move PortNumber and sourceinfoadapter to basictypes.rng (Han Cheng),
    virsh: Unregister the connection close notifier upon termination (Viktor Mihajlovski),
    libvirt: Increase connection reference count for callbacks (Viktor Mihajlovski),
    storage: Fix volume cloning for logical volume. (Atsushi Kumagai),
    security_manager: fix comparison (Guido Günther),
    qemu: fix memory leak on -machine usage error (Eric Blake),
    qemu-blockjob: Fix limit of bandwidth for block jobs to supported value (Peter Krempa),
    sec_manager: Refuse to start domain with unsupported seclabel (Michal Privoznik),
    qemu: Fix crash when updating media with shared device (Peter Krempa),
    virsh: Call virDomainFree in cmdDomFSTrim (Michal Privoznik),
    smartcard: spell ccid-card-emulated qemu property correctly (Eric Blake),
    Resolve valgrind failure (John Ferlan)
  • Improvements:
    spec: collect all BuildRequires into one area (Eric Blake),
    Resolve valgrind error (John Ferlan),
    esx: Support virtualHW version 9 (Martin Kletzander),
    build: mark conditionally unused variables (Eric Blake),
    virsh: clarify vol-{down,up}load description (Ján Tomko),
    qemu: report an error if memballoon has wrong address type (Ján Tomko),
    qemu: assign addresses when converting xml to native (Ján Tomko),
    qemu: Error out if spice port autoallocation is requested, but disabled (Peter Krempa),
    qemu: put usb cgroup setup in common function (Laine Stump),
    qemu: add vfio devices to cgroup ACL when appropriate (Laine Stump),
    qemu: honor allowDiskFormatProbing when parsing command line (Ján Tomko),
    conf: add missing error on OOM (Ján Tomko),
    qemu: don't always reserve PCI addresses for implicit controllers (Ján Tomko),
    conf: remove extraneous _TYPE from driver backend enums (Laine Stump),
    network: support <driver name='vfio'/> in network definitions (Laine Stump),
    qemu: launch bridge helper from libvirtd (Paolo Bonzini),
    virnetdevtap: add virNetDevTapGetName (Paolo Bonzini),
    qemu: set qemu process' RLIMIT_MEMLOCK when VFIO is used (Laine Stump),
    qemu: use new virCommandSetMax(Processes|Files) (Laine Stump),
    util: new virCommandSetMax(MemLock|Processes|Files) (Laine Stump),
    Do proper escaping of cgroup resource partitions (Daniel P. Berrange),
    Ensure all cgroup partitions have a suffix of ".partition" (Daniel P. Berrange),
    Change VM cgroup suffix from '{lxc,qemu}.libvirt' to 'libvirt-{lxc,qemu}' (Daniel P. Berrange),
    test: Add JSON test for query-tpm-types (Stefan Berger),
    virsh: suppress aliases in group help (Eric Blake),
    security: update hostdev labelling functions for VFIO (Laine Stump),
    util: new function virPCIDeviceGetVFIOGroupDev (Laine Stump),
    virsh: use new virNodeDeviceDetachFlags (Laine Stump),
    xen: implement virNodeDeviceDetachFlags backend (Laine Stump),
    qemu: implement virNodeDeviceDetachFlags backend (Laine Stump),
    hypervisor api: implement RPC calls for virNodeDeviceDetachFlags (Laine Stump),
    hypervisor api: new virNodeDeviceDetachFlags (Laine Stump),
    qemu: bind/unbind stub driver according to config <driver name='x'/> (Laine Stump),
    pci: keep a stubDriver in each virPCIDevice (Laine Stump),
    qemu: use vfio-pci on commandline when appropriate (Laine Stump),
    conf: formatter/parser/RNG/docs for hostdev <driver name='kvm|vfio'/> (Laine Stump),
    conf: put hostdev pci address in a struct (Laine Stump),
    qemu: detect vfio-pci device and its bootindex parameter (Laine Stump),
    build: avoid unsafe functions in libgen.h (Eric Blake),
    qemu: auto-add pci-root to 'pc-i440*' machines too (Ján Tomko),
    qemu: auto-add bridges and allow using them (Ján Tomko),
    qemu: auto-add pci-root controller for pc machine types (Ján Tomko),
    qemu: build command line for pci-bridge device (liguang),
    conf: add PCI controllers (Ján Tomko),
    qemu: call post-parse callbacks when parsing command line too (Ján Tomko),
    qemu: Add command line builder and parser for NVRAM. (Li Zhang),
    qemuBuildCommandLine: Don't overwrite errors with NWFilter's one (Michal Privoznik),
    Introduce a sub-element <driver> for controller (Osier Yang),
    qemu: Don't require a block or file when looking for an alias (Wido den Hollander),
    Change the tag name "num_queues" into "queues" (Osier Yang),
    qemu: Improve handling of channels when generating SPICE command line (Peter Krempa),
    qemu: Do sensible auto allocation of SPICE port numbers (Peter Krempa),
    Make driver method names consistent with public APIs (Daniel P. Berrange),
    Dedicated name for sub-driver open/close methods (Daniel P. Berrange),
    Rename 'DeviceMonitor' to 'NodeDeviceDriver' (Daniel P. Berrange),
    Extend previous check to validate driver struct field names (Daniel P. Berrange),
    Ensure driver method names match public API names (Daniel P. Berrange),
    Make naming of remote procedures match API names exactly (Daniel P. Berrange),
    Cleanup command line options in gendispatch.pl (Daniel P. Berrange),
    qemu: Split out SPICE port allocation into a separate function (Peter Krempa),
    qemu: Use switch instead of ifs in qemuBuildGraphicsCommandLine (Peter Krempa),
    qemu: Split out code to generate VNC command line (Peter Krempa),
    qemu: Split out code to generate SPICE command line (Peter Krempa),
    qemu: Use -machine accel=tcg|kvm when available (Jiri Denemark),
    qemu: Move -enable-kvm and friends earlier in the command line (Jiri Denemark),
    Switch to a more extensible annotation system for RPC protocols (Daniel P. Berrange),
    qemu: Fix setting of memory tunables (Peter Krempa),
    logging: Make log regexp more compact (and readable) (Jiri Denemark),
    qemu: Ignore libvirt logs when reading QEMU error output (Jiri Denemark),
    qemu: Move QEMU log reading into a separate function (Jiri Denemark),
    update input ip processing (Gene Czarcinski),
    create virSocketAddrGetIpPrefix utility function (Gene Czarcinski),
    Replace more cases of /system with /machine (Daniel P. Berrange),
    Change default resource partition to /machine (Daniel P. Berrange),
    qemu: rename CheckSlot to SlotInUse (Ján Tomko),
    qemu: switch PCI address set from hash table to an array (Ján Tomko),
    conf: add model attribute to virDomainDefMaybeAddController (Ján Tomko),
    qemu: move PCI address check out of qemuPCIAddressAsString (Ján Tomko),
    qemu: QEMU_PCI constant consistency (Ján Tomko),
    qemu: print PCI address hexadecimally in errors (Ján Tomko),
    qemu: make qemuComparePCIDevice aware of multiple buses (Ján Tomko),
    conf: Reword error message to be more universal (Peter Krempa),
    cpu: Rename PowerPCUpdate and PowerPCDataFree functions (Jiri Denemark),
    cpu: Remove hardcoded list of PowerPC models (Jiri Denemark),
    cpu: Reimplement PowerPCDecode (Jiri Denemark),
    cpu: Reimplement PowerPCBaseline (Jiri Denemark),
    cpu: Fix loading PowerPC vendor from cpu_map.xml (Jiri Denemark),
    cpu: Fix PowerPCNodeData (Jiri Denemark),
    cpu: Make comparing PowerPC CPUs easier to read (Jiri Denemark),
    cpu: Introduce cpuModelIsAllowed internal API (Jiri Denemark),
    virsh-domain: Refactor cmdVcpucount and fix output on inactive domains (Peter Krempa),
    Set legacy USB option with default for ppc64. (Li Zhang),
    qemu_conf: add new configuration key bridge_helper (Paolo Bonzini),
    util: allow using virCommandAllowCap with setuid helpers (Paolo Bonzini),
    util: simplify virSetUIDGIDWithCaps (Paolo Bonzini),
    virsh-domain: Report errors on invalid --holdtime value for cmdSendKey (Peter Krempa),
    virsh-domain: Clean up cmdSendKey (Peter Krempa),
    qemu: simplify use of virArchFromHost (Tal Kain),
    rng: tighten up domain <controller> schema (Laine Stump),
    network: remove autostart flag from network when undefining it (Peter Krempa),
    syntax-check: Only allows to include public headers in external tools (Osier Yang),
    syntax-check: Don't include public headers in internal source (Osier Yang),
    syntax-check: Don't include duplicate header (Osier Yang),
    qemu: Allow the disk wwn to have "0x" prefix (Osier Yang),
    cleanup: Don't include libvirt/virterror.h (Osier Yang),
    cleanup: Don't include libvirt/libvirt.h (Osier Yang),
    cleanup: Remove the duplicate header (Osier Yang),
    cleanup: Only include testutils.h once (Osier Yang),
    Check for unsupported QMP command (Stefan Berger),
    qemu_agent: Add support for appending arrays to commands (Peter Krempa),
    Add support for perf_event and net_cls cgroup controllers (Daniel P. Berrange),
    Replace LXC cgroup mount code with call to virCgroupIsolateMount (Daniel P. Berrange),
    Add an API for re-mounting cgroups, to isolate the process location (Daniel P. Berrange),
    Track symlinks for co-mounted cgroup controllers (Daniel P. Berrange),
    Remove non-functional code for setting up non-root cgroups (Daniel P. Berrange),
    Change default cgroup layout for QEMU/LXC and honour XML config (Daniel P. Berrange),
    Add a new virCgroupNewPartition for setting up resource partitions (Daniel P. Berrange),
    Cleanup if creating cgroup directories fails (Daniel P. Berrange),
    Add misc extra debugging into cgroups code (Daniel P. Berrange),
    Refactor cgroups internal data structures (Daniel P. Berrange),
    Add a test suite for cgroups functionality (Daniel P. Berrange),
    Rename virCgroupForXXX to virCgroupNewXXX (Daniel P. Berrange),
    Pull definition of structs out of vircgroup.c to vircgrouppriv.h (Daniel P. Berrange),
    Store a virCgroupPtr instance in virLXCDomainObjPrivatePtr (Daniel P. Berrange),
    Store a virCgroupPtr instance in qemuDomainObjPrivatePtr (Daniel P. Berrange),
    Add missing param to virCgroupForDriver stub (Daniel P. Berrange),
    Introduce a virFileDeleteTree method (Daniel P. Berrange),
    Conditionalize use of symlink() function in test suite (Daniel P. Berrange),
    maint: update to latest gnulib (Eric Blake),
    Use unsigned int instead of unsigned (Osier Yang),
    qemu: Report also domain name in error message when domain object wasn't found (Peter Krempa),
    qemu: Refactor lookup of domain object (Peter Krempa),
    cleanup: Change datatype of net->stp to boolean (Osier Yang),
    cleanup: Change datatype of usbdev->allow to boolean (Osier Yang),
    cleanup: Change datatype of graphic's members to boolean (Osier Yang),
    cleanup: Change datatype of accel's members to boolean (Osier Yang),
    Add test case for TPM passthrough (Stefan Berger),
    TPM support for QEMU command line (Stefan Berger),
    QEMU Cgroup support for TPM passthrough (Stefan Berger),
    Audit the starting of a guest using TPM passthrough (Stefan Berger),
    Add SELinux and DAC labeling support for TPM passthrough (Stefan Berger),
    Convert QMP strings into QEMU capability bits (Stefan Berger),
    Parse TPM passthrough XML in the domain XML (Stefan Berger),
    Helper functions for host TPM support (Stefan Berger),
    Add documentation and schema for TPM passthrough (Stefan Berger),
    Add function to find a needle in a string array (Stefan Berger),
    Add QMP probing for TPM (Stefan Berger),
    conf: Allow for non-contiguous device boot orders (Peter Krempa),
    Tweak EOF handling of streams (Daniel P. Berrange),
    Add USB option capability (Li Zhang),
    Add error handling to optional arguments in cmdCPUStats (John Ferlan),
    qemu: Do not report unsafe migration for local files (Jiri Denemark),
    qemu: Try to use QMP for send-key if supported (Peter Krempa),
    virsh: Update list of shutdown/reboot modes (Michal Privoznik),
    cleanup: Change datatype of secret->private to boolean (Osier Yang),
    cleanup: Change datatype of secret->ephemeral to boolean (Osier Yang),
    cleanup: Change datatype of fs->readonly to boolean (Osier Yang),
    cleanup: Change datatype of disk->readonly to boolean (Osier Yang),
    cleanup: Change datatype of disk->transient to boolean (Osier Yang),
    cleanup: Change datatype of disk->shared to boolean (Osier Yang),
    cleanup: Change datatype of auth->expires to boolean (Osier Yang),
    cleanup: Change datatype of hostdev->missing to boolean (Osier Yang),
    Cleanup: Change datatype of origstate's members to boolean (Osier Yang),
    Cleanup: Change datatype of hostdev->managed to boolean (Osier Yang),
    conf: Change help function (Han Cheng),
    qemu: Remove now obsolete assignment of default network card model for s390 hosts (Peter Krempa),
    qemu: Clean up network device CLI generator (Peter Krempa),
    qemu: Use correct default model on s390 (Viktor Mihajlovski),
    sanlock: add missing test command in virt-sanlock-cleanup.in (Alex Jia),
    Generate RFC4122 compliant UUIDs (Milos Vyletel),
    Unmount existing filesystems under user specified mounts in LXC (Daniel P. Berrange),
    Move lxcContainerUnmountSubtree further up in file (Daniel P. Berrange),
    Implement support for <hostdev caps=net> (Bogdan Purcareata),
    Update structure & XML definitions to support <hostdev caps=net> (Bogdan Purcareata),
    Rename virCgroupMounted to virCgroupHasController & make it more robust (Daniel P. Berrange),
    qemu: Allow volume type disk for device 'lun' (Osier Yang),
    qemu: Support sgio setting for volume type disk (Osier Yang),
    qemu: Support shareable volume type disk (Osier Yang),
    qemu: Translate the pool disk source earlier (Osier Yang),
    Support seclabels for volume type disk (Osier Yang),
    Support startupPolicy for 'volume' disk (Osier Yang),
    qemu: Translate the pool disk source when building drive string (Osier Yang),
    Introduce new XMLs to specify disk source using libvirt storage (Osier Yang),
    conf: New helper virDomainDiskSourceDefFormat to format the disk source (Osier Yang),
    storage: Guess the parent if it's not specified for vHBA (Osier Yang),
    storage: Add startPool and stopPool for scsi backend (Osier Yang),
    util: Add helper to get the scsi host name by iterating over sysfs (Osier Yang),
    phyp: Prohibit fc_host adapter for phyp driver (Osier Yang),
    storage: Move virStorageBackendSCSIGetHostNumber into iscsi backend (Osier Yang),
    storage: Make the adapter name be consistent with node device driver (Osier Yang),
    New XML attributes for storage pool source adapter (Osier Yang),
    Disable cast-align warnings in various places (Daniel P. Berrange),
    Copy struct inotify_event entries to avoid alignment problems (Daniel P. Berrange),
    Use VIR_ALLOC_VAR instead of VIR_ALLOC_N for creating virObject (Daniel P. Berrange),
    Avoid casts between unsigned char * and struct nlmsghdr (Daniel P. Berrange),
    Rewrite keycode map to avoid a struct (Daniel P. Berrange),
    Add a test suite for keycode mapping functions (Daniel P. Berrange),
    qemu: Error out if the bitmap for pinning is all clear (Osier Yang),
    util: Add a helper to check if all bits of a bitmap are clear (Osier Yang),
    qemu: Support multiple queue virtio-scsi (Osier Yang),
    build: check correct protocol.o file (Eric Blake),
    build: use proper pod for nested bulleted VIRSH_DEBUG list (Eric Blake),
    qemu: Remove maximum cpu limit when setting processor count using the API (Peter Krempa),
    Don't create dirs in cgroup controllers we don't want to use (Daniel P. Berrange),
    Rename virCgroupGetAppRoot to virCgroupForSelf (Daniel P. Berrange),
    Ensure LD_PRELOAD exists before running test case (Daniel P. Berrange),
    Refactor RNG schema for resource tuning (Daniel P. Berrange),
    rpc: Fix connection close callback race condition and memory corruption/crash (Peter Krempa),
    virsh: Register and unregister the close callback also in cmdConnect (Peter Krempa),
    virsh: Move cmdConnect from virsh-host.c to virsh.c (Peter Krempa),
    virCaps: get rid of defaultConsoleTargetType callback (Peter Krempa),
    virCaps: get rid of macPrefix field (Peter Krempa),
    virCaps: get rid of hasWideScsiBus (Peter Krempa),
    virCaps: get rid of defaultDiskDriverType (Peter Krempa),
    virCaps: get rid of emulatorRequired (Peter Krempa),
    virCaps: get rid of defaultDiskDriverName (Peter Krempa),
    virCaps: get rid of "defaultInitPath" value in the virCaps struct (Peter Krempa),
    qemu: Record the default NIC model in the domain XML (Peter Krempa),
    conf callback: Rearrange function parameters (Peter Krempa),
    conf: Add post XML parse callbacks and prepare for cleaning of virCaps (Peter Krempa),
    maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption (Peter Krempa),
    Create fake NUMA info if libnuma isn't available (Daniel P. Berrange),
    Cope with missing /sys/devices/system/cpu/cpu0/topology files (Daniel P. Berrange),
    Add armv6l architecture to list of valid arches (Daniel P. Berrange),
    Implement minimal sysinfo for ARM platforms (Daniel P. Berrange),
    Disable of unused sysinfotest functions (Daniel P. Berrange),
    Wire up sysinfo for LXC driver (Daniel P. Berrange),
    Add support for SD cards in nodedev driver (Daniel P. Berrange),
    Auto-add a root <filesystem> element to LXC containers on startup (Daniel P. Berrange),
    Remove support for old kernels lacking private devpts (Daniel P. Berrange),
    Enable full RELRO mode (Daniel P. Berrange),
    Build all binaries with PIE (Daniel P. Berrange),
    rng: Add definition for network disk source (Osier Yang),
    Disable static libraries by default (Daniel P. Berrange),
    Allow multiple parameters for schedinfo (Martin Kletzander),
    virsh-domain: Add --live, --config, --current logic to cmdDetachDisk (Peter Krempa),
    virsh-domain: Add --live, --config, --current logic to cmdDetachDevice (Peter Krempa),
    virsh-domain: Add --live, --config, --current logic to cmdDetachInterface (Peter Krempa),
    virsh: Fix semantics of --config for "update-device" command (Peter Krempa),
    virsh-domain: Fix declarations of flag variables in cmdChangeMedia (Peter Krempa),
    virsh-domain: Simplify usage of --current, --live and --config flags (Peter Krempa),
    virsh-domain-monitor: Refactor cmdDomIfGetLink (Peter Krempa),
    Use virMacAddrFormat instead of manual mac address formatting (Peter Krempa),
    util: Change virMacAddrFormat to lowercase hex characters (Peter Krempa),
    Optimize machine option to set more options with it (Li Zhang),
    conf: Enforce ranges on cputune variables (Peter Krempa),
    test: Return Libvirt logo as domain screenshot (Michal Privoznik),
    qemu: Allow migration over IPv6 (Ján Tomko),
    virsh: Add a helper to parse cpulist (Osier Yang)
  • Cleanups:
    qemu_command.c: Fix whitespacing within for() (Michal Privoznik),
    qemu: Fix the indention (Osier Yang),
    Sanitize whitespace in driver.h (Daniel P. Berrange),
    sheepdog: Omit braces with a single-line body (Harry Wei),
    storage: Fix the indention (Osier Yang),
    Remove extraneous comma in info_cpu_stats and opts_cpu_stats (John Ferlan)

1.0.4: Apr 01 2013

  • Features:
    qemu: support passthrough for iscsi disks (Paolo Bonzini),
    various S390 improvements (Viktor Mihajlovski),
    various LXC bugs fixes and improvements (Daniel P. Berrange, Gao feng),
    Add API for thread cancellation (Daniel P. Berrange)
  • Documentation:
    Fix truncated sentence in RDP 'multiUser' attribute (Christophe Fergeau),
    Remove the redundant parentheses in migrate help (Yanbing Du),
    virsh: Fix docs for "virsh setmaxmem" (Peter Krempa),
    util: fix virAllocVar's comment (Ján Tomko),
    clarify virsh net commands (Gene Czarcinski),
    storage: Fix grammar (Philipp Hahn),
    Fix /pool/storage/name documentation (Christophe Fergeau),
    Fix /pool/storage/directory@path documentation (Christophe Fergeau),
    Fix snapshot-create-as syntax in help output (Martin Kletzander),
    Update to COPYING.LIB to latest LGPLv2.1 copy (Christophe Fergeau),
    Fix a copy & paste error for virsh dump help (Yanbing Du),
    Clarify semantics of sparse storage volumes (Jiri Denemark)
  • Portability:
    virutil: Fix compilation on non-linux platforms (Michal Privoznik),
    Fix linkage of virt-aa-helper with numa library (Daniel P. Berrange),
    Don't fail if SELinux is diabled (Guido Günther),
    Fix --without-libvirtd builds (Doug Goldstein),
    lxc: include sys/stat.h (Guido Günther),
    Ensure GET_VLAN_VID_CMD is always defined (Daniel P. Berrange),
    Don't import loop.h unless HAVE_DECL_LO_FLAGS_AUTOCLEAR is defined (Daniel P. Berrange)
  • Bug Fixes:
    virsh: don't call virSecretFree on NULL (Ján Tomko),
    storage: Avoid double virCommandFree in virStorageBackendLogicalDeletePool (Martin Kletzander),
    nodedev: invert virIsCapableFCHost return value (Ján Tomko),
    security_manager.c: Append seclabel iff generated (Michal Privoznik),
    security: Don't add seclabel of type none if there's already a seclabel (Michal Privoznik),
    security_manager: Don't manipulate domain XML in virDomainDefGetSecurityLabelDef (Michal Privoznik),
    conf: fix memory leak of class_id bitmap (Guannan Ren),
    uml:release config object when uml driver shutdown (Guannan Ren),
    qemu:release qemu config object when qemu driver shutdown (Guannan Ren),
    net: use newer iptables syntax (Stefan Seyfried),
    remote: Don't call NULL closeFreeCallback (Viktor Mihajlovski),
    rpc: Fix client crash when server drops connection (Jiri Denemark),
    conf: fix a failure when detaching a usb device (Guannan Ren),
    qemu: Don't set address type too early during virtio disk hotplug (Guido Günther),
    virsh: error out on non-numeric timeout values (Ján Tomko),
    qemu: Set migration FD blocking (Michal Privoznik),
    util: Fix bug of managing vport (Osier Yang),
    nodedev: Fix the improper logic when enumerating SRIOV VF (Osier Yang),
    lxc: Prevent shutting down the host (Martin Kletzander),
    Ensure root filesystem is mounted if a file/block mount. (Daniel P. Berrange),
    Fix thread safety in LXC callback handling (Daniel P. Berrange),
    Remove bogus filtering from virDomainGetRootFilesystem (Daniel P. Berrange),
    Fix parsing of bond interface XML (Jim Fehlig),
    virsh: don't print --(null) in vol-name and vol-pool (Ján Tomko),
    Fix free of uninitialized value in LXC numad setup (Daniel P. Berrange),
    Correct invalid RNG schemas (Martin Kletzander),
    python: Fix emulatorpin API bindings (Peter Krempa),
    qemu: Un-mark volume as mirrored/copied if blockjob copy fails (Peter Krempa),
    Fix initialization of virIdentityPtr thread locals (Daniel P. Berrange),
    qemu: Add the new disk src into shared disk table when updating disk (Osier Yang),
    python: fix bindings that don't raise an exception (Guannan Ren),
    Fix typos s/HAVE_SELINUX/WITH_SELINUX/ (Daniel P. Berrange),
    fix TLS error with virNetServerClientCreateIdentity (Olivia Yin),
    storage: fix unlikely memory leak in rbd backend (Laine Stump),
    Do not prematurely close loop devices in LXC controller (Daniel P. Berrange),
    qemu: Fix startupPolicy regression (Jiri Denemark),
    qemu: do not support non-network disks without -drive (Paolo Bonzini),
    Fix size probing for VDI images (Ján Tomko),
    Fix memory leak on OOM in virSecuritySELinuxMCSFind (Daniel P. Berrange),
    Avoid closing uninitialized FDs when LXC startup fails (Daniel P. Berrange),
    Prevent streams from becoming libvirtd controlling TTY (Daniel P. Berrange),
    util: escapes special characters in VIR_LOG_REGEX (Guannan Ren),
    Daemonize fuse thread in libvirt_lxc (Daniel P. Berrange),
    Fix missing error dispatch in virDomainLxcEnterNamespace (Daniel P. Berrange),
    Fix query of LXC security label (Daniel P. Berrange),
    qemu_driver: Try KVM_CAP_MAX_VCPUS only if defined (Michal Privoznik),
    Add missing break in LXC loop device setup (Daniel P. Berrange),
    qemu: Avoid NULL dereference in qemuSharedDiskEntryFree (Jiri Denemark),
    qemu: Fix retrieval of maximum number of vCPUs on KVM hosts (Peter Krempa),
    virsh: fix snapshot-create with no xmlfile (Ján Tomko),
    lxc: Init activeUsbHostdevs (Guido Günther),
    bandwidth: Require network QoS if interface uses 'floor' (Michal Privoznik),
    qemuDomainBlockStatsFlags: Guard disk lookup with a domain job (Michal Privoznik),
    Fix crash parsing RNG device specification (Daniel P. Berrange),
    Resolve valgrind error (John Ferlan),
    storage: Cleanup logical volume creation code (Jiri Denemark),
    qemu: update domain live xml for virsh memtune with --live flag (Guannan Ren),
    util: fix a integer boundary error (Guannan Ren)
  • Improvements:
    util: Fix the conflict type for virIsCapableFCHost (Osier Yang),
    libvirt_private.syms: Correctly export seclabel APIs (Michal Privoznik),
    log: Separate thread ID from timestemp in ring buffer (Jiri Denemark),
    virsh: Correct DESCRIPTION for virsh help blockcopy (Yanbing Du),
    Fix virConnectOpen.*() name requirements (Martin Kletzander),
    virsh: Let the compiler check usage of all fields in vshCmdOptType enum (Peter Krempa),
    python: set default value to optional arguments (Guannan Ren),
    libvirt-guests: newline between output sentences (Eric Blake),
    nodedev: Abstract nodeDeviceVportCreateDelete as util function (Osier Yang),
    nodedev: Dump max vports and vports in use for HBA's XML (Osier Yang),
    nodedev: Refactor the helpers (Osier Yang),
    nodedev: Use access instead of stat (Osier Yang),
    util: Add one helper virReadFCHost to read the value of fc_host entry (Osier Yang),
    nodedev: Introduce two new flags for listAll API (Osier Yang),
    nodedev: Remove the unused enum (Osier Yang),
    Mount temporary devpts on /var/lib/libvirt/lxc/$NAME.devpts (Daniel P. Berrange),
    Move FUSE mount to /var/lib/libvirt/lxc/$NAME.fuse (Daniel P. Berrange),
    viralloc: Export virAllocTest* (Michal Privoznik),
    qemu: add support for LSI MegaRAID SAS1078 (aka megasas) SCSI controller (Paolo Bonzini),
    qemu: pass iscsi authorization credentials (Paolo Bonzini),
    domain: parse XML for iscsi authorization credentials (Paolo Bonzini),
    secret: add iscsi to possible usage types (Paolo Bonzini),
    domain: make port optional for network disks (Paolo Bonzini),
    qemu: add support for libiscsi (Paolo Bonzini),
    make: regenerate bindings when <classname>.py changes (Guannan Ren),
    python: treat flags as default argument with value 0 (Guannan Ren),
    virsh-snapshot: Simplify cleanup path in cmdSnapshotEdit (Peter Krempa),
    virsh-snapshot: Use the mutually exclusive params macro in cmdSnapshotEdit (Peter Krempa),
    virsh-snapshot: Refactor cmdSnapshotCurrent (Peter Krempa),
    virsh-domain: Fix flag name in error message to match the check (Peter Krempa),
    virsh-host: Refactor cmdFreecell (Peter Krempa),
    virsh-snapshot: Refactor virsh snapshot-list (Peter Krempa),
    virsh: Introduce macros to reject mutually exclusive arguments (Peter Krempa),
    qemu: s/VIR_ERR_NO_SUPPORT/VIR_ERR_OPERATION_UNSUPPORTED (Michal Privoznik),
    domain: add support for iscsi network disks (Paolo Bonzini),
    cgroup: export virCgroupRemoveRecursively (Gao feng),
    doc/schema: disk storage volume formats (Philipp Hahn),
    doc/schema: Support iqn for storage pools (Philipp Hahn),
    doc/schema: add ocfs2 for disk vol (Philipp Hahn),
    LXC: add cpuset cgroup support for lxc (Gao feng),
    NUMA: cleanup for numa related codes (Gao feng),
    LXC: allow uses advisory nodeset from querying numad (Gao feng),
    rename qemuGetNumadAdvice to virNumaGetAutoPlacementAdvice (Gao feng),
    selinux: deal with dtb file (Olivia Yin),
    qemu: add dtb option support (Olivia Yin),
    conf: support <dtb> tag in XML domain file (Olivia Yin),
    rename tests/conftest.c (Gene Czarcinski),
    Setup LXC cgroups in two phases (Daniel P. Berrange),
    Set the current client identity during API call dispatch (Daniel P. Berrange),
    Add ability to get a virIdentity from a virNetServerClientPtr (Daniel P. Berrange),
    internal APIs for managing identities (Daniel P. Berrange),
    Add API to get the system identity (Daniel P. Berrange),
    Add APIs for associating a virIdentityPtr with the current thread (Daniel P. Berrange),
    Define internal APIs for managing identities (Daniel P. Berrange),
    Add APIs to get at more client security data (Daniel P. Berrange),
    qemu: support URI syntax for NBD (Paolo Bonzini),
    qemu: support NBD with Unix sockets (Paolo Bonzini),
    qemu: support named nbd exports (Paolo Bonzini),
    qemu: rewrite NBD command-line builder and parser (Paolo Bonzini),
    qemu: test NBD command-line builder and parser (Paolo Bonzini),
    util: portably check for unchanged uid (Eric Blake),
    Make vshDebug work when parsing parameters (Martin Kletzander),
    Remove contiguous CPU indexes assumption (Li Zhang),
    audit: Audit resources used by VirtIO RNG (Peter Krempa),
    S390: Testcases for virtio-scsi and virtio-rng (Viktor Mihajlovski),
    S390: Enable virtio-scsi and virtio-rng (Viktor Mihajlovski),
    qemu: Rename virtio-scsi capability (Viktor Mihajlovski),
    util: fix clear_emulator_capabilities=0 (Laine Stump),
    Fix deps for generating RPC dispatch code (Daniel P. Berrange),
    Fix generation of systemtap probes for RPC protocols (Daniel P. Berrange),
    Re-add DTrace probes on 'dispose' functions (Daniel P. Berrange),
    Fix parsing of SELinux ranges without a category (Daniel P. Berrange),
    Separate MCS range parsing from MCS range checking (Daniel P. Berrange),
    virtio-rng: Add rate limiting options for virtio-RNG (Peter Krempa),
    S390: Testcases for virtio-ccw machines (Viktor Mihajlovski),
    S390: Add hotplug support for s390 virtio devices (J.B. Joret),
    S390: QEMU driver support for CCW addresses (Viktor Mihajlovski),
    S390: domain_conf support for CCW (Viktor Mihajlovski),
    S390: Documentation for CCW address type (Viktor Mihajlovski),
    Use separate symbol file for GNUTLS symbols (Daniel P. Berrange),
    Apply security label when entering LXC namespaces (Daniel P. Berrange),
    virCaps: conf: start splitting out irrelevant data (Peter Krempa),
    Remove hack using existence of an 'identity' string to disable auth (Daniel P. Berrange),
    Convert HAVE_SELINUX to WITH_SELINUX (Guido Günther),
    capabilities: add NUMA memory information (Dusty Mabe),
    apparmor: use AppArmorSetFDLabel for both imageFD and tapFD (Guannan Ren),
    Include pid namespace inode in LXC audit messages (Daniel P. Berrange),
    Add support for disks backed by plain files in LXC (Daniel P. Berrange),
    Refactor loop device setup code in LXC (Daniel P. Berrange),
    Convert QEMU driver to use virLogProbablyLogMessage (Daniel P. Berrange),
    Improve LXC startup error reporting (Daniel P. Berrange),
    Add method for checking if a string is (probably) a log message (Daniel P. Berrange),
    Use VIR_MASS_CLOSE in LXC container startup (Daniel P. Berrange),
    Fix conditional build of virNetDevSetupControlFull (Daniel P. Berrange),
    Rename 'daemon' param to 'binary' in virNetClientNewUNIX (Daniel P. Berrange),
    Rename 'clone' to 'clonevol' to avoid name clash with clone() syscall (Daniel P. Berrange),
    viralloc: use consistent naming (Eric Blake),
    rng: allow default device in RNG grammar (Eric Blake),
    build: avoid shadowing a function name (Eric Blake),
    conf: Report errors on cputune parameter parsing (Peter Krempa),
    conf: Make virDomainDeviceInfoIterate usable without os type (Peter Krempa),
    virsh-snapshot: Add ability to print only snapshot names (Peter Krempa)
  • Cleanups:
    python:remove semicolon in python code (Guannan Ren),
    Clean redundant code about VCPU string checking (Li Zhang),
    Cleanup useless flags specifications (Martin Kletzander),
    nodeinfo: don't define nodeGetCellMemory if it isn't ever used (Hu Tao),
    virsh-domain: Remove unused vshCompleteXMLFromDomain (Peter Krempa),
    sheepdog: Adjust logic to break while loop to avoid Coverity error (John Ferlan),
    libxl_driver: Resolve Coverity errors (John Ferlan),
    libxl_conf: Resolve Coverity issue with call to regcomp() (John Ferlan),
    conf: whitespace cleanups and refactors with no semantic impact (Peter Krempa)

1.0.3: Mar 05 2013

  • Features:
    Introduce virDomainMigrate*CompressionCache APIs (Jiri Denemark),
    Introduce virDomainGetJobStats API (Jiri Denemark),
    Add basic support for VDI images (Martin Kletzander),
    Introduce API virNodeDeviceLookupSCSIHostByWWN (Osier Yang),
    Various locking improvements (Daniel P. Berrange)
  • Documentation:
    internals: Update to include RPC and Lock links and add new data (John Ferlan),
    Add references for phyp and parallels (John Ferlan),
    api: Add text and references for daemon (John Ferlan),
    api: Add text and references for drivers section (John Ferlan),
    api: Complete list of function and naming conventions (John Ferlan),
    api: Reword and clean lists for object description (John Ferlan),
    api: Reword objects exposed section (John Ferlan),
    hellolibvirt: Adjust code to use new APIs (John Ferlan),
    libvirt: Update headers for doc (John Ferlan),
    hook: log the exit status of the hook not 256 (Guido Günther),
    maint: fix typo in network docs (Eric Blake),
    util: Add docs for virXMLProp string (Peter Krempa),
    Fix attribute name for virtio-rng backend (Peter Krempa),
    document new storage volume/pool types (Philipp Hahn),
    schema: Add basic documentation for the virtual RNG device support (Peter Krempa),
    util: fix typo in comment (Laine Stump),
    Add missing 'vram' in QXL video device doc (Christophe Fergeau),
    Fix HTML errors (Jiri Denemark),
    fix 1.0.2 release date (Eric Blake),
    HACKING: Sync with docs/hacking.html.in (John Ferlan),
    hacking: Add some details to handle Valgrind output (John Ferlan),
    don't ignore virEvent API (Eric Blake),
    use div, not table, for notices on opaque types (Claudio Bley),
    abort when missing return or argument documentation (Claudio Bley),
    libvirt.h.in: document virConnectDomainEventCallback's return value (Claudio Bley),
    libvirt.h.in: add missing return doc for virEventRemoveHandleFunc (Claudio Bley),
    libvirt.h.in: fix documentation for virConnectDomainEventBlockJobCallback (Claudio Bley),
    libvirt.h.in: add missing documentation for virConnectCloseFunc (Claudio Bley),
    Sync HACKING and hacking.html.in (Martin Kletzander)
  • Portability:
    build: don't use gcrypt.h without gnutls support (Eric Blake),
    tests: skip virstoragetest on RHEL 5 (Eric Blake),
    Remove some C99 variable decls in parallels driver (Daniel P. Berrange),
    tests: old automake lacks abs_builddir (Eric Blake),
    tests: consistent skip messages (Eric Blake),
    tests: don't test json when not compiled in (Eric Blake),
    tests: avoid segfault if json monitor not present (Eric Blake),
    run: use portable shell (Eric Blake),
    s/arm/armv7l/ in caps-qemu-kvm.xml (Daniel P. Berrange),
    build: force correct gcc syntax for attribute_nonnull (Eric Blake),
    build: more mingw fixes (Eric Blake),
    build: fix mingw build (Eric Blake),
    build: fix vircommand build on mingw (Eric Blake),
    regex: gnulib guarantees that we have regex support (Eric Blake),
    build: fix compilation of selinux on RHEL 5 (Eric Blake),
    build: fix VPATH testsuite (Eric Blake),
    build: fix build of HAL node backend (Eric Blake),
    sanitytest.py: Do not rely on system libvirt (Jiri Denemark),
    tests: reserve more fds for commandtest (Eric Blake),
    build: Add libcurl dependency to libvirt_driver.la (Jiri Denemark),
    tests: Don't build securityselinuxlabeltest without qemu (Jiri Denemark)
  • Bug Fixes:
    Fix TLS tests with gnutls 3 (Daniel P. Berrange),
    qemu: fix wrong evaluation in qemuDomainSetMemoryParameters (Satoru Moriya),
    libvirt does not logout of iscsi targets, causing system hang on shutdown (Fritz Elfert),
    qemu: Remove managed save flag from VM when starting with --force-boot (Peter Krempa),
    qemu: Use -1 as unpriviledged uid/gid (Christophe Fergeau),
    virnetdevmacvlan.c: Introduce mutex for macvlan creation (Michal Privoznik),
    Fix deadlock in QEMU close callback APIs (Daniel P. Berrange),
    Fix crash in QEMU auto-destroy with transient guests (Daniel P. Berrange),
    python: fix fd leak in generator.py (Guannan Ren),
    qemu: Make sure qemuProcessStart is run within a job (Jiri Denemark),
    Fix starting qemu instances when apparmor driver is enabled (Jim Fehlig),
    qemu: Don't fail to shutdown domains with unresponsive agent (Michal Privoznik),
    qemu: virConnectGetVersion returns bogus value (Viktor Mihajlovski),
    qemu: fix use-after-free when parsing NBD disk (Paolo Bonzini),
    Don't try to add non-existent devices to ACL (Daniel P. Berrange),
    Fix typo in internal VIR_QEMU_PROCESS_START_AUTODESROY constant (Daniel P. Berrange),
    Fix autodestroy of QEMU guests (Daniel P. Berrange),
    qemu: -numa doesn't (yet) support disjoint range (Eric Blake),
    interface: udev backend coverity NULL deref (Doug Goldstein),
    Fix crash changing CDROM media (Daniel P. Berrange),
    qemu: do not set unpriv_sgio if neither supported nor requested (Paolo Bonzini),
    conf: Avoid leaking of RNG device definition (Peter Krempa),
    interface: Fix udev backend bridge device display (Doug Goldstein),
    storage: use f_frsize, not f_bsize, for calculating available space (Sage Weil),
    conf: Don't leak 'ram' video property on error (Christophe Fergeau),
    conf: Don't leak 'primary' video property on error (Christophe Fergeau),
    qemu: check backing chains even when cgroup is omitted (Eric Blake),
    qemu: Avoid deadlock in autodestroy (Jiri Denemark),
    qemu: fix an off-by-one error in qemuDomainGetPercpuStats (Guannan Ren),
    qemu: Fix the memory leak (Osier Yang),
    keepalive: Guard against integer overflow (John Ferlan),
    libxl: Fix setting of disk backend (Jim Fehlig),
    Remove a couple of misplaced VIR_FREE (John Ferlan),
    Fix memory leak in virNetClientIOWriteMessage (Sergey Fionov),
    qemu: Do not ignore mandatory features in migration cookie (Jiri Denemark),
    rpc: Avoid deadlock when closing client connection (Jiri Denemark),
    Avoid resetting errors in virTypedParamsFree (Jiri Denemark),
    interface: fix udev backend use after free (Doug Goldstein),
    virsh: Resolve possible NULL dereference (John Ferlan),
    commandtest: Resolve some coverity resource leaks (John Ferlan),
    Fix libvirt upgrade path when nwfilter is used (Stefan Berger),
    util: maintain caps when running command with uid != 0 (Laine Stump),
    virCommand: Don't misuse the eventloop for async IO (Michal Privoznik),
    Release VM lock before acquiring virDomainObjListPtr lock (Daniel P. Berrange),
    Fix potential deadlock across fork() in QEMU driver (Daniel P. Berrange),
    hypervisor: Restore pm initialization (John Ferlan),
    Remove re-entrant API call in SELinux/AppArmor security managers (Daniel P. Berrange),
    xend: Fix a memory leak found by Coverity (John Ferlan),
    network_conf.c: Free xmlDoc after use (Michal Privoznik),
    virsh-snapshot: Fix XPath query to determine snapshot state (Peter Krempa),
    virnetttlcontext: Resolve issues found by Valgrind (John Ferlan),
    qemumonitortestutils: Resolve resource leaks found by Valgrind (John Ferlan),
    qemumonitorjsontest: Resolve resource leaks found by Valgrind (John Ferlan),
    qemu_command: Resolve resource leaks found by Valgrind (John Ferlan),
    domain_conf: Resolve resource leaks found by Valgrind (John Ferlan),
    vport_profile_conf: Resolve memory leak found by Valgrind (John Ferlan),
    netdev_vlan_conf: Resolve memory leak found by Valgrind. (John Ferlan),
    qemuxml2argvtest: Resolve resource leaks found by Valgrind (John Ferlan),
    virnettlscontexttest: Resolve memory leak found by Valgrind (John Ferlan),
    qemu_hotplug: Need to call virUSBDeviceFree() (John Ferlan),
    rpc: Need to virCommandFree on error path (John Ferlan),
    uml: Resolve leak if need to requery in umlIdentifyOneChrPTY() (John Ferlan),
    openvz: Need to error check openvzDomainSetVcpusFlagsInternal() (John Ferlan),
    parallels: Need to free memory on error path (John Ferlan),
    network: Remove conditional settings to resolve resource leak (John Ferlan),
    storage: Resolve resource leaks with cmd processing (John Ferlan),
    keepalive: Resolve Coverity complaint (John Ferlan),
    tlscontext: Make sure to get proper pointer to 'dname' (John Ferlan),
    Fix leak of usbDevice struct when initializing cgroups (Daniel P. Berrange),
    Fix typo in configure.ac causing $LIBS to gain a copy of $CFLAGS (Daniel P. Berrange),
    util: Fix mask for 172.16.0.0 private address range (Jiri Denemark)
  • Improvements:
    rng: restrict passthrough names to known-good files (Eric Blake),
    util: use string libvirt to prefix error message instead of libvir (Guannan Ren),
    python: fix typoes and repeated global vars references (Guannan Ren),
    Fix a message typo (Serge Hallyn),
    Avoid spamming logs with cgroups warnings (Daniel P. Berrange),
    tests: Test XML entities in source path for RNG device (Peter Krempa),
    tests: fix leaks in storagevolxml2argvtest (Ján Tomko),
    libvirt.c: Make VIR_MIGRATE_NON_SHARED_{INC,DISK} mutually exclusive (Michal Privoznik),
    schema: Restrict mode to octal (Philipp Hahn),
    libvirt: fix error message when connection can't be opened (Ján Tomko),
    tests: uniformly report test failures (Eric Blake),
    qemu: minor monitor lock cleanups (Eric Blake),
    qemu: don't override earlier json error (Eric Blake),
    qemu: Refactor qemuDomainSetMemoryParameters (Peter Krempa),
    storage: cast -1 for uid_t|gid_t (Philipp Hahn),
    storage: Cast uid_t|gid_t to unsigned int (Philipp Hahn),
    util: Fix printf format for uid_t|gid_t (Philipp Hahn),
    tests: Add tests for virtio-rng device handling (Peter Krempa),
    qemu: Implement support for EGD backend for virtio-rng (Peter Krempa),
    qemu: Implement support for default 'random' backend for virtio-rng (Peter Krempa),
    conf: Add RNG device ABI compatibility check (Peter Krempa),
    conf: Add support for RNG device configuration in XML (Peter Krempa),
    conf: Add fake switch statement to warn for new device types (Peter Krempa),
    use client id for IPv6 DHCP host definition (Gene Czarcinski),
    Trivial fix: in dhcp-host the name is optional (Gene Czarcinski),
    storage: qemu-img: change INFO to DEBUG (Ján Tomko),
    storage: move qemu-img options before positional arguments (Ján Tomko),
    storage: add test for qemu-img command line generation (Ján Tomko),
    storage: separate qemu-img command generation and execution (Ján Tomko),
    storage: move flag setting after declarations (Ján Tomko),
    run: license as LGPL (Eric Blake),
    qemu_migration: Cancel running jobs on failed migration (Michal Privoznik),
    qemu_migration: Stop NBD server at Finish phase (Michal Privoznik),
    qemu_migration: Introduce qemuMigrationDriveMirror (Michal Privoznik),
    qemu_migration: Introduce qemuMigrationStartNBDServer() (Michal Privoznik),
    qemu: Introduce nbd-server-stop command (Michal Privoznik),
    qemu: Introduce nbd-server-add command (Michal Privoznik),
    qemu: Introduce nbd-server-start command (Michal Privoznik),
    Introduce NBD migration cookie (Michal Privoznik),
    qemu: Introduce NBD_SERVER capability (Michal Privoznik),
    Add support for <option> tag in network config (Pieter Hollants),
    maint: check all symfiles for sorting (Eric Blake),
    qemu: Implement virDomainMigrate*CompressionCache (Jiri Denemark),
    virsh: Add migrate-compcache command (Jiri Denemark),
    remote: Implement virDomainMigrate*CompressionCache (Jiri Denemark),
    python: Implement virDomainMigrateGetCompressionCache wrapper (Jiri Denemark),
    qemu: Implement virDomainGetJobStats (Jiri Denemark),
    qemu: Parse more fields from query-migrate QMP command (Jiri Denemark),
    virsh: Use virDomainGetJobStats in domjobinfo if available (Jiri Denemark),
    remote: Implement virDomainGetJobStats (Jiri Denemark),
    remote: Auto-allocate params in remoteDeserializeTypedParameters (Jiri Denemark),
    python: Implement virDomainGetJobStats wrapper (Jiri Denemark),
    qemu: Add support for compressed migration (Jiri Denemark),
    Introduce VIR_MIGRATE_COMPRESSED flag (Jiri Denemark),
    Update arch names in RNG schema to match virarch.c (Daniel P. Berrange),
    interface: dev type support for bond interfaces (Doug Goldstein),
    interface: add bond support to udev backend (Doug Goldstein),
    interface: Improve udev backend device type id (Doug Goldstein),
    interface: Refactor interface vlan to helper func (Doug Goldstein),
    interface: udev bridge code error handling updates (Doug Goldstein),
    interface: Refactor udev bridge to helper func (Doug Goldstein),
    conf: Refactor ABI stability checking and break long lines (Peter Krempa),
    conf: Refactor cpumask handling (Peter Krempa),
    conf: Reformat many function headers in domain_conf.c (Peter Krempa),
    conf: Fix label naming in virDomainDefFormatInternal (Peter Krempa),
    conf: Ensure that new devices are added to conf copy function (Peter Krempa),
    qemu: Refactor error paths in virQEMUDriverCreateCapabilities (Peter Krempa),
    conf: Improve core dump config error message (Peter Krempa),
    qemu: Turn closeCallbacks into virObjectLockable (Jiri Denemark),
    qemu: Run lzop with '--ignore-warn' (Michal Privoznik),
    qemu: Remove the shared disk entry if the operation is ejecting or updating (Osier Yang),
    qemu: Move the shared disk adding and sgio setting prior to attaching (Osier Yang),
    qemu: Update shared disk table when reconnecting qemu process (Osier Yang),
    qemu: Record names of domain which uses the shared disk in hash table (Osier Yang),
    qemu: Merge qemuCheckSharedDisk into qemuAddSharedDisk (Osier Yang),
    qemu: Add checking in helpers for sgio setting (Osier Yang),
    maint: enforce private symbol section sorting (Eric Blake),
    qemu: switch PCI address allocation to use virDevicePCIAddress (Ján Tomko),
    virsh: distinguish errors between missing argument and wrong option (Guannan Ren),
    maint: sort private syms to reflect recent header renames (Eric Blake),
    maint: fix header file owners of private symbols (Eric Blake),
    net: use structs for address and port ranges (Natanael Copa),
    net: add support for specifying port range for forward mode nat (Natanael Copa),
    net: support set public ip range for forward mode nat (Natanael Copa),
    qemu: Use atomic ops for driver->nactive (Jiri Denemark),
    virsh: Always print capacity unit (Jiri Denemark),
    qemu: pass "-1" as uid/gid for unprivileged qemu (Guido Günther),
    Add capabilities bit for -no-kvm-pit-reinjection (Doug Goldstein),
    Add autogenerated lxc_protocol.[ch] to gitignore (Doug Goldstein),
    drivermodule: Ignore coverity warning about leaked_storage (John Ferlan),
    storage: test backing chain traversal (Eric Blake),
    storage: don't follow backing chain symlinks too eagerly (Eric Blake),
    storage: refactor metadata lookup (Eric Blake),
    storage: prepare for refactoring (Eric Blake),
    storage: rearrange functions (Eric Blake),
    vbox: Don't overwrite errors returned by virDomainDeviceDefParse (Jiri Denemark),
    util: virSetUIDGIDWithCaps - change uid while keeping caps (Laine Stump),
    util: drop capabilities immediately after changing uid/gid of child (Laine Stump),
    qemu: let virCommand set child process security labels/uid/gid (Laine Stump),
    security: add new virSecurityManagerSetChildProcessLabel API (Laine Stump),
    util: add security label setting to virCommand (Laine Stump),
    build: define SECDRIVER_LIBS in Makefile.am (Laine Stump),
    qemu: replace exec hook with virCommandSetUID/GID in storage_backend (Laine Stump),
    qemu: replace exec hook with virCommandSetUID/GID in qemuCaps* (Laine Stump),
    util: make virSetUIDGID a NOP only when uid or gid is -1 (Laine Stump),
    util: add virCommandSetUID and virCommandSetGID (Laine Stump),
    util: refactor virCommandHook into virExec and virCommandHandshakeChild (Laine Stump),
    util: eliminate extra args from virExec (Laine Stump),
    util: eliminate generic hook from virExecWithHook (Laine Stump),
    Remove qemuDriverLock from almost everywhere (Daniel P. Berrange),
    virsh-volume.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-snapshot.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-secret.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-pool.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-nwfilter.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-nodedev.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-network.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-interface.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-host.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-domain.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh-domain-monitor.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),
    virsh: Switch to c99 initialization of vshCmdDef (Michal Privoznik),
    xen: clean up the mess with cpumap (Eric Blake),
    util: use new virendian.h macros (Eric Blake),
    util: add virendian.h macros (Eric Blake),
    Check if classes are derived from object (Guido Günther),
    virsh: Use virNodeDeviceLookupSCSIHostByWWN (Osier Yang),
    nodedev: Implement virNodeDeviceLookupSCSIHostByWWN (Osier Yang),
    remote: Wire up the remote protocol (Osier Yang),
    hypervisor: Revisit Coverity issues regarding cpumap (John Ferlan),
    hypervisor: Remove redundant validity checks, clean up function headers (John Ferlan),
    xend: Remove redundant validity checks, clean up function headers (John Ferlan),
    xm: Remove redundant validity checks, clean up function headers (John Ferlan),
    inotify: Clean up some function headers (John Ferlan),
    xs: Remove redundant validity checks, clean up function headers (John Ferlan),
    virsh-snapshot: Reject --no-metadata together with --print-xml (Peter Krempa),
    virsh-snapshot: Refactor some details in virsh snapshot-create-as (Peter Krempa),
    Pass virQEMUDriverPtr into APIs managed shared disk list (Daniel P. Berrange),
    Serialize execution of security manager APIs (Daniel P. Berrange),
    Turn virSecurityManager into a virObjectLockable (Daniel P. Berrange),
    sheepdog: skip refresh on creation failure (Harry Wei),
    util: refactor iptables command construction into multiple steps (Natanael Copa),
    qemu: support vhost-net for generic ethernet devices (Laine Stump),
    Stop accessing driver->caps directly in QEMU driver (Daniel P. Berrange),
    Rename 'qemuCapsXXX' to 'virQEMUCapsXXX' (Daniel P. Berrange),
    Turn virCapabilities into a virObject (Daniel P. Berrange),
    Fix comment about virCgroupPtr locking rules in QEMU driver (Daniel P. Berrange),
    Fix PKI directory used for QEMU test suite (Daniel P. Berrange),
    virCondDestroy: Lose attribute RETURN_CHECK (Michal Privoznik),
    Drop useless virFileWrapperFdCatchError (Michal Privoznik),
    valgrind: Adjust the suppression file (John Ferlan),
    Add syntax-check to make sure Python files don't contain trailing semicolon (Guido Günther),
    Remove more trailing semicolons in Python files (Guido Günther),
    syntax-check: Don't check non-reentrant functions in docs (Peter Krempa),
    Cosmetics: Remove semicolons (Guido Günther),
    bitmap: add way to find next clear bit (Eric Blake),
    Initialize qemuImageBinary path at startup (Daniel P. Berrange),
    Introduce annotations for virQEMUDriverPtr fields (Daniel P. Berrange),
    Protect USB/PCI device list access in QEMU with dedicated locks (Daniel P. Berrange),
    Convert virPCIDeviceList and virUSBDeviceList into virObjectLockable (Daniel P. Berrange),
    Rename all USB device functions to have a standard name prefix (Daniel P. Berrange),
    Rename all PCI device functions to have a standard name prefix (Daniel P. Berrange),
    Remove pointless 'qemuVersion' field from virQEMUDriverPtr (Daniel P. Berrange),
    Use atomic ops to increment nextvmid (Daniel P. Berrange),
    Make virDomainObjList self-locking via virObjectLockable (Daniel P. Berrange),
    Merge virDomainObjListIsDuplicate into virDomainObjListAdd (Daniel P. Berrange),
    qemu: don't log failure during QMP add-fd probe (Eric Blake),
    Turn virDomainObjList into an opaque virObject (Daniel P. Berrange),
    Rename all domain list APIs to have virDomainObjList prefix (Daniel P. Berrange),
    Introduce a virQEMUDriverConfigPtr object (Daniel P. Berrange),
    Fix missing error constants in libvirt python module (Daniel P. Berrange),
    qemu: Catch stderr of image compression binary (Michal Privoznik),
    qemu: Catch stderr of image decompression binary (Michal Privoznik),
    virFileWrapperFd: Switch to new virCommandDoAsyncIO (Michal Privoznik),
    tests: Create test for virCommandDoAsyncIO (Michal Privoznik),
    Introduce event loop to commandtest (Michal Privoznik),
    virCommand: Introduce virCommandDoAsyncIO (Michal Privoznik),
    conf: Use correct type for device type enum in virDomainDeviceDefFree (Peter Krempa),
    Support shifted magic in storage files (Martin Kletzander),
    virsh-secret: Refactor error paths (Peter Krempa),
    virsh-nwfilter: Update nwfilter commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-snapshot: Update snapshot commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-snapshot: Refactor cmdSnapshotDumpXML (Peter Krempa),
    virsh-nodedev: Refactor error paths, error messages and whitespace (Peter Krempa),
    virsh-nodedev: Update node device commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-interface: Update interface commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-network: Update network commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-host: Update host commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-domain: Update domain commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-domain-monitor: Update domain commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-volume: Update volume commands to use vshCommandOptStringReq (Peter Krempa),
    virsh-pool: Update pool commands to use vshCommandOptStringReq (Peter Krempa),
    virsh: Add helper to request string arguments with error reporting (Peter Krempa),
    virsh-pool: Rename helper function buildPoolXML to vshBuildPoolXML (Peter Krempa),
    virsh-volume: Rename helper function makeCloneXML to vshMakeCloneXML (Peter Krempa),
    virsh-snapshot: Fix coding style and remove dead code (Peter Krempa),
    hyperv: Simplify hypervPrivate pointer handling in hypervOpen (Matthias Bolte),
    esx: Simplify esxPrivate pointer handling in esxOpen (Matthias Bolte),
    maint: update to latest gnulib (Eric Blake),
    Add support for QEMU -add-fd support detection (Stefan Berger),
    qemu: expose qemu 1.3 add-fd monitor command (Eric Blake),
    tests: add a comment about our fake qmp (Eric Blake),
    spec: Avoid using makeinstall relic (Jiri Denemark),
    complete virterror->virerror name change (Serge Hallyn),
    apibuild.py: fix TypeError raised in except clause (Claudio Bley),
    Enforce return check on virAsprintf() calls (John Ferlan),
    snapshot: Mention disk-only snapshots in error message (Peter Krempa)
  • Cleanups:
    Revert hack for autodestroy in qemuProcessStop (Daniel P. Berrange),
    Revert "Add support for <option> tag in network config" (Laine Stump),
    security: Remove unnecessary checks for mgr == NULL (John Ferlan),
    vircommand: Remove unnecessary sa_assert (John Ferlan),
    build: fix make check of remote_protocol-structs (Laine Stump),
    spec: Fix minor changelog issues (Jiri Denemark)

1.0.2: Jan 30 2013

  • Features:
    LXC improvements (Daniel P. Berrange),
    S390 architecture improvement (Viktor Mihajlovski),
    Power architecture improvement (Li Zhang),
    large Coverity report cleanups and associated bug fixes (John Ferlan),
    virTypedParams* APIs to helps with those data structures (Jiri Denemark)
  • Documentation:
    aesthetical cleanups (Martin Kletzander),
    fix missed documentation for virterror functions (Claudio Bley),
    util: Fix docs for virBitmapParse (Peter Krempa),
    rng: Have colorful *.rng with editor (Osier Yang),
    safe{read,write}: Document usage with nonblocking FD (Michal Privoznik),
    Generate documentation for virTypedParams* APIs (Jiri Denemark),
    event.c source file was renamed as virevent.c (Jiri Denemark),
    Add some style and color to the HTML documentation (Claudio Bley),
    don't use <i> and <tt> HTML tags (Claudio Bley),
    Assign classes to documentation elements (Claudio Bley),
    remove extra " (Eric Blake),
    maint: typo fix (Eric Blake),
    restrict the set of characters for info keys (Claudio Bley),
    simplify code (Claudio Bley),
    mention git rename detection (Eric Blake),
    add some more hacking tips (Eric Blake),
    fix typo in isa-serial additions (Laine Stump),
    network: fix typos and docs (Guannan Ren),
    maint: fix comment typo (Eric Blake),
    break longer text into paragraphs in HTML (Claudio Bley),
    remove duplicate check in index.add (Claudio Bley),
    Add missing flags to migrate documentation (Guido Günther),
    Add docs and rng schema for new XML tag sgio (Osier Yang),
    Fix the comment grammar (Osier Yang),
    Remove the inexistent function in comments (Osier Yang),
    fix typo in the word affinities (Martin Kletzander),
    Fix documentation for readonly element (Jiri Denemark),
    Replace </br> with <br/> in docs/news.html.in (Peter Krempa)
  • Portability:
    Make sure we only abort without libcurl if $with_esx = yes (Guido Günther),
    build: Fix RPM build errors related to libvirt-lxc API (Viktor Mihajlovski),
    build: fix build on BSD (Eric Blake),
    build: further fixes for broken if_bridge.h (Eric Blake),
    securityselinuxhelper.c: Don't try to include xattr.h if not available (John Ferlan),
    build: work around broken kernel header (Eric Blake),
    build: avoid m4_expand for RHEL 5 (Eric Blake),
    build: move file deleting action from %files list to %install (Yufang Zhang),
    build: libvirt-guests files misplaced in specfile (Viktor Mihajlovski),
    build: fix mingw rpm build (Eric Blake),
    build: fix build with optimization enabled (Eric Blake),
    build: make broken -Wlogical-op test be gcc-only (Eric Blake),
    util: FreeBSD: stub out CPU affinity functions (Roman Bogorodskiy),
    nodeinfo: add FreeBSD support (Roman Bogorodskiy),
    build: Check for broken GCC -Wlogical-op in configure (Viktor Mihajlovski)
  • Bug Fixes:
    conf: Don't format cputune element when not needed (Martin Kletzander),
    conf: Fix cpumask leak in virDomainDefFree (Ján Tomko),
    qemu: Destroy domain on decompression binary error (Michal Privoznik),
    rpc: Fix crash on error paths of message dispatching (Peter Krempa),
    vbox: Address false positive for NULL dereference (John Ferlan),
    libxl: Fix removing non-persistent domain after save (Jim Fehlig),
    libxl: Fix race between destruction of objects (Jim Fehlig),
    libxl: Fix races in libxl event code (Jim Fehlig),
    libxl: Fix handling of timeouts (Jim Fehlig),
    conf: avoid NULL deref for pmsuspended domain state (Eric Blake),
    qemu_monitor: Fix tray-open attribute in query-block (Michal Privoznik),
    Fix bogus reporting of KVM support for non-native emulators (Daniel P. Berrange),
    Move QEMU capabilities initialization later in QEMU startup (Daniel P. Berrange),
    Fix performance & reliability of QMP probing (Daniel P. Berrange),
    qemu: escape ipv6 for rbd network disk hosts (Josh Durgin),
    snapshot: fix state after external snapshot of S3 domain (Eric Blake),
    python: Fix bindings for virDomainSnapshotGet{Domain,Connect} (Jiri Denemark),
    Fix crash free'ing securityDriverNames in QEMU driver (Daniel P. Berrange),
    Fix leak of securityDriverNames (Daniel P. Berrange),
    Avoid use of free'd memory in auto destroy callback (Daniel P. Berrange),
    Ensure nodeinfo struct is initialized to zero (Daniel P. Berrange),
    apparmor: Avoid freeing uninitialized pointer (Jiri Denemark),
    xen: Actually fix the uninitialized variable (Peter Krempa),
    xen: Initialize variable before using (Peter Krempa),
    util: Need to add virCommandFree() (John Ferlan),
    storage: Need to add virCommandFree() (John Ferlan),
    security: Need to add virCommandFree() (John Ferlan),
    parallels: Resolve some resource leaks (John Ferlan),
    qemu: Re-add driver unlock to qemuDomainSendKey (Viktor Mihajlovski),
    conf: Fix usage of virBitmapParse (Peter Krempa),
    virbitmaptest: Resolve Coverity errors (John Ferlan),
    lxc_process: Avoid passing NULL iface->iname (John Ferlan),
    lxc_driver: Need to check for vm before calling virDomainUnlock(vm) (John Ferlan),
    tests: Remove VIR_FREE() on static/stack buffer (der.data) (John Ferlan),
    Fix nwfilter driver reload/shutdown handling when unprivileged (Daniel P. Berrange),
    conf: Check if number of vCPUs fits in the storage variable (Peter Krempa),
    tests: Need to initialize 'test' properly on error path (John Ferlan),
    virkeepalive: Remove erroneous VIR_FREE(msg) (John Ferlan),
    security: Need to initialize 'sens' (John Ferlan),
    interface: Need to initialize 'ifaces_list' (John Ferlan),
    storage: Need to initialize 'zerobuf' (John Ferlan),
    virsh: Need to intialize 'str' (John Ferlan),
    lxc: Need to initialize 'dst' (John Ferlan),
    virfile: Need to initialize 'looppath' (John Ferlan),
    commandtest: Need to initialize 'errbuf' (John Ferlan),
    virnetdev: Need to initialize 'pciConfigAddr' (John Ferlan),
    virnetsockettest: Need to initialize 'path' (John Ferlan),
    virnetserver: Need to initialize 'sigdata' (John Ferlan),
    conf: Need to initialize variables before VIR_FREE (John Ferlan),
    uml: Avoid resource leak of event in umlInofityEvent (John Ferlan),
    selinux: Resolve resource leak using the default disk label (John Ferlan),
    util: Need to check child JSON allocation before use (John Ferlan),
    parallels: Need to handle virJSONValueObjectGetString error (John Ferlan),
    qemu: Reject attempts to create snapshots with names containing '/' (Peter Krempa),
    qemu: Don't return success if creation of snapshot save file fails (Peter Krempa),
    Fix race condition when destroying guests (Daniel P. Berrange),
    storage: Fix lvcreate parameter for backingStore. (Atsushi Kumagai),
    virobject: Remove the bogus ! from call to virObjectInitialize() (John Ferlan),
    qemu: Check valid activeDev before calling pciDeviceSetUsedBy (John Ferlan),
    Followup fix for integer wraparound in port allocator (Daniel P. Berrange),
    qemu: Double mutex unlock in qemuDomainModifyDeviceFlags (Viktor Mihajlovski),
    fixed xt_physdev warning when defining ip(6)tables rules (Reinier Schoof),
    conf: don't fail to parse <boot> when parsing a single device (Laine Stump),
    Fix inheritance of virNetClient (Daniel P. Berrange),
    Avoid integer wrap on remotePortMax in QEMU driver (Daniel P. Berrange),
    python: Avoid freeing uninitialized new_params pointer (Jiri Denemark),
    Fix typo in variable name (Guido Günther),
    libxl: Fix cleanup on domain start error (Jim Fehlig),
    libxl: Check for libxl_ctx_alloc failure (Jim Fehlig),
    libxl: Don't free domain death event (Jim Fehlig),
    locking: Resolve resource leaks on non error path (John Ferlan),
    conf: fix leak in virDomainVcpuPinAdd (Ján Tomko),
    conf: fix class_id bitmap leak in virNetworkObj (Ján Tomko),
    qemu: fix QEMU_CAPS_NO_ACPI detection (Ján Tomko),
    openvz: Need to check 'vm' first before dereferencing 'def' (John Ferlan),
    interface: Need to check ifacedef->mac not just ifacedef after strdup() (John Ferlan),
    qemu: Don't update count of vCPUs if hot-unplug has failed (Peter Krempa),
    libvirt: lxc: don't mkdir when selinux is disabled (Gao feng),
    xen: Resolve resource leak with 'cpuset' (John Ferlan),
    interface: Resolve resource leak wth 'tmp_iface_objs' (John Ferlan),
    storage: Resource resource leak using 'tmp_vols' (John Ferlan),
    test: Resource resource leak with 'tmp_vols' (John Ferlan),
    rpc: Avoid resource leak of 'socks' if any object append fails (John Ferlan),
    util: Resolve resource leak for 'res' in virSetInherit error path. (John Ferlan),
    interface: Need to initialize 'add_to_list' (John Ferlan),
    lxc: Initialize dst due to potential cleanup usage before setting (John Ferlan),
    openvz: Need to initialize 'ret' for kb_per_pages error path (John Ferlan),
    parallels: Resolve issues with uninitialized 'ret' value (John Ferlan),
    storage: Need to also VIR_FREE(reg) (John Ferlan),
    Fix typo LIBCURL_{CFLAGS,LIBS} to CURL_{CFLAGS,LIBS} (Daniel P. Berrange),
    Fix build due to previous LXC patch (Daniel P. Berrange),
    build: fix incomplete WITH_SASL conversion (Eric Blake),
    network: bridge: Fix regression when defining persistent networks (Peter Krempa),
    storage: Resolve resource leak using 'vol' buffer (John Ferlan),
    phyp: Resolve some file descriptor leaks (John Ferlan),
    qemu_agent: Remove agent reference only when disposing it (Michal Privoznik),
    libvirt: lxc: fix incorrect parameter of lxcContainerMountProcFuse (Gao feng),
    util: Check for NULL 'dev' on input to usbFreeDevice (John Ferlan),
    maint: avoid potential promotion issues with [ug]id_t (Eric Blake),
    Resolve COPY_PASTE error found by Coverity (John Ferlan),
    storage: fix leak in virStorageBackendLogicalMakeVol (Ján Tomko),
    cpu: Avoid NULL dereference (John Ferlan),
    lxc: Avoid possible NULL dereference on *root prior to opendir(). (John Ferlan),
    remote: Avoid calling virAuthConfigLookup() if 'credname' is NULL. (John Ferlan),
    vmware: Avoid NULL dereference for 'caps' (John Ferlan),
    xen: Avoid possible NULL dereference (John Ferlan),
    Fix virLXCPrepareHostDevices method (Daniel P. Berrange),
    Only initialize capabilities after setting dir permissions (Daniel P. Berrange),
    build: install libvirt sysctl file correctly (Eric Blake),
    snapshot: qemu: Fix segfault and vanishing snapshots when redefining (Peter Krempa),
    qemu: Detect VGA_QXL capability correctly (Michal Privoznik),
    qemu: fix a segfault in qemuProcessWaitForMonitor (Ján Tomko),
    parallels: check and handle error for virAsprintf() calls (John Ferlan),
    udev: check and handle error for virAsprintf() calls (John Ferlan),
    util: fix botched check for new netlink request filters (Laine Stump),
    blockjob: fix memleak that prevented block pivot (Eric Blake),
    util: fix functions that retrieve SRIOV VF info (Laine Stump),
    Fix parsing of arch from domain XML (Daniel P. Berrange),
    Fix CPU baseline to not hardcode arch (Daniel P. Berrange),
    Fix SELinux security label test (Daniel P. Berrange),
    spec: Fix script warning when uninstalling libvirt-client (Cole Robinson),
    network: don't require private addresses if dnsmasq uses SO_BINDTODEVICE (Laine Stump),
    `apparmor: Fix build (Jiri Denemark),
    S390: Fix virSysinfoRead memory corruption (Viktor Mihajlovski)
  • Improvements:
    Ignore '.trs' files (Martin Kletzander),
    build: Regenerate man pages on version bump (Jiri Denemark),
    rng: Change the datatype for volume name for common use (Osier Yang),
    rng: Remove the duplicate definition (Osier Yang),
    qemu_hotplug: Rework media changing process (Michal Privoznik),
    maint: one missed syms file (Eric Blake),
    vbox: Adjust the UTF FREE macros (John Ferlan),
    virsh: Add --print-xml flag for attach-disk command (Peter Krempa),
    libxl: Domain event handler improvements (Jim Fehlig),
    libxl: Explicitly remove timeouts (Jim Fehlig),
    maint: make it easier to sort syms files (Eric Blake),
    qemuDomainSendKey: Relax the qemu driver locking (Michal Privoznik),
    node_memory: Add '\n' to help message (Satoru Moriya),
    locking: use virStrcpyStatic instead of memcpy (John Ferlan),
    Make python objects inherit from 'object' base class (Daniel P. Berrange),
    selinux: Properly indent preprocessor directives (Jiri Denemark),
    selinux: Only create the selabel_handle once. (Richard W.M. Jones),
    parallels_utils: Check return status properly from virCommandRun() (John Ferlan),
    test: Add support for thread and core information for the test driver (Peter Krempa),
    capabilities: Add additional data to the NUMA topology info (Peter Krempa),
    capabilities: Switch CPU data in NUMA topology to a struct (Peter Krempa),
    conf: Split out NUMA topology formatting to simplify access to data (Peter Krempa),
    schemas: Add schemas for more CPU topology information in the caps XML (Peter Krempa),
    schema: Make the cpuset type reusable across schema files (Peter Krempa),
    S390: Enhance memballoon handling for virtio-s390 (Viktor Mihajlovski),
    qemu_agent: Ignore expected EOFs (Michal Privoznik),
    nodeinfo: Use sa_assert() instead of Coverity error tag (John Ferlan),
    build: allow virObject to have no parent (Eric Blake),
    qemu: Support ram bar size for qxl devices (Alon Levy),
    viralloc: Adjust definition of VIR_FREE() for Coverity (John Ferlan),
    conf: Improve error messages if parsing of vCPU count fails (Peter Krempa),
    virsh-domain: Refactor error paths for cmdCPUStats (Peter Krempa),
    fix typos in comments for VIR_DOMAIN_PROCESS_SIGNAL_{PWR,SYS} (Claudio Bley),
    storage: Add coverity[dead_error_condition] to avoid error (John Ferlan),
    network: Add coverity[leaked_handle] to ignore error (John Ferlan),
    remote: Avoid coverity[leaked_storage] message. (John Ferlan),
    qemu: Add coverity[negative_returns] tag (John Ferlan),
    rpc: Add coverity[dead_error_begin] tag (John Ferlan),
    xen: Add coverity[ptr_arith] and [sign_extension] tags (John Ferlan),
    nodeinfo: Add coverity[dead_error_begin] and [returned_null] tags (John Ferlan),
    lxc: Add coverity[dead_error_begin] tag in switch stmts (John Ferlan),
    xend: Address some Coverity false positives (John Ferlan),
    security: Use virStrcpy to move the label (John Ferlan),
    qemu: Forbid snapshot names starting with '.' (Peter Krempa),
    spec: indent %if to make it easier to see conditions (Eric Blake),
    Log flags passed to qemuMigrationPrepare{Tunnel,Direct} APIs (Michal Privoznik),
    Introduce virTypedParamsClear public API (Jiri Denemark),
    virsh: Use virTypedParams* APIs in cpu-stats (Jiri Denemark),
    virsh: Use virTypedParams* APIs in node-memory-tune (Jiri Denemark),
    virsh: Use virTypedParams* APIs in numatune (Jiri Denemark),
    virsh: Use virTypedParams* APIs in memtune (Jiri Denemark),
    virsh: Use virTypedParams* APIs in domblkstat (Jiri Denemark),
    virsh: Use virTypedParams* APIs in schedinfo (Jiri Denemark),
    virsh: Use virTypedParams* APIs in domiftune (Jiri Denemark),
    virsh: Use virTypedParams* APIs in blkiotune (Jiri Denemark),
    virsh: Use virTypedParams* APIs in blkdeviotune (Jiri Denemark),
    Add virTypedParams* APIs (Jiri Denemark),
    qemu: Simplify condition with already extracted flag (Peter Krempa),
    network: use bandwidth from portgroup when appropriate (Laine Stump),
    network: Resolve some issues around vlan copying (John Ferlan),
    lock_daemon: Simplify error handling (Peter Krempa),
    virsh-volume.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-snapshot.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-secret.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-pool.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-nwfilter.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-nodedev.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-network.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-interface.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-host.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-domain-monitor.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh-domain.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    virsh.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),
    libvirt.c: fix typo in comment (Claudio Bley),
    Move comments after enum members (Claudio Bley),
    include virterror_internal.h in threads.h (Hu Tao),
    include util.h in cgroup.h (Hu Tao),
    call virstateCleanup to do the cleanup before libvirtd exits (Hu Tao),
    libxl: Use consistent parameter naming scheme (Jim Fehlig),
    libxl: Use consistent style for function definitions (Jim Fehlig),
    Convert libxl driver over to use virPortAllocator APIs (Daniel P. Berrange),
    Convert QEMU driver over to use virPortAllocator APIs (Daniel P. Berrange),
    Add a port allocator class (Daniel P. Berrange),
    Convert all rpc classes over to virObjectLockable (Daniel P. Berrange),
    Convert virDomainObj, qemuAgent, qemuMonitor, lxcMonitor to virObjectLockable (Daniel P. Berrange),
    util: Check for negative indent in virBufferAdd (John Ferlan),
    tools: Check return status on virBufferTrim() (John Ferlan),
    rpc: Check and message setsockopt() (John Ferlan),
    xen: Ignore return status for TCP_NODELAY (John Ferlan),
    Add a virObjectLockable class holding a mutex (Daniel P. Berrange),
    Allow for multi-level inheritance of virObject classes (Daniel P. Berrange),
    Add 'lxc-enter-namespace' command to virsh (Daniel P. Berrange),
    build: add new file, for lxc_protocol checking (Eric Blake),
    Add implementation of virDomainLxcOpenNamespace to LXC driver (Daniel P. Berrange),
    Implement the RPC protocol for the libvirt-lxc.la library (Daniel P. Berrange),
    .gitignore: Sort alphabetically (Michal Privoznik),
    Add missing stubs to securityselinuxhelper.c (Daniel P. Berrange),
    Introduce an LXC specific public API & library (Daniel P. Berrange),
    Add a test suite for validating SELinux labelling (Daniel P. Berrange),
    Rename HAVE_POLKIT to WITH_POLKIT (Daniel P. Berrange),
    Remove unused XMLRPC_REQUIRED var (Daniel P. Berrange),
    Convert openwsman check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Convert ssh2 check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Rename HAVE_LIBSSH2 to WITH_SSH2 (Daniel P. Berrange),
    Convert curl check over to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Rename HAVE_LIBCURL to WITH_CURL (Daniel P. Berrange),
    Convert fuse check over to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Rename HAVE_FUSE to WITH_FUSE (Daniel P. Berrange),
    Rename HAVE_GNUTLS to WITH_GNUTLS (Daniel P. Berrange),
    Convert blkid check over to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Convert HAVE_LIBBLKID to WITH_BLKID (Daniel P. Berrange),
    Convert HAL check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Convert HAVE_HAL to WITH_HAL (Daniel P. Berrange),
    Convert udev/pciaccess checks to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Convert HAVE_UDEV to WITH_UDEV (Daniel P. Berrange),
    Convert avahi check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Convert HAVE_AVAHI to WITH_AVAHI (Daniel P. Berrange),
    Convert DBus check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Convert HAVE_DBUS to WITH_DBUS (Daniel P. Berrange),
    Convert netcf check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),
    Convert cap-ng check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),
    Convert HAVE_CAPNG to WITH_CAPNG (Daniel P. Berrange),
    Convert numactl checks to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),
    Convert HAVE_NUMACTL to WITH_NUMACTL (Daniel P. Berrange),
    Convert apparmor check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),
    Convert selinux check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),
    Convert HAVE_SELINUX to WITH_SELINUX (Daniel P. Berrange),
    qemu: Fix grouping of capabilities strings (Peter Krempa),
    network: Report real error if addition of firewall rules fails (Peter Krempa),
    virsh: Reformat output of virsh net-list (Peter Krempa),
    Convert audit check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),
    Convert HAVE_AUDIT to WITH_AUDIT (Daniel P. Berrange),
    Convert sasl check to use LIBVIRT_CHECK_LIB_ALT (Daniel P. Berrange),
    Convert HAVE_SASL to WITH_SASL (Daniel P. Berrange),
    Convert sanlock check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),
    Convert HAVE_SANLOCK to WITH_SANLOCK (Daniel P. Berrange),
    Convert yajl check to use LIBVIRT_CHECK_LIB_ALT (Daniel P. Berrange),
    Convert HAVE_YAJL into WITH_YAJL (Daniel P. Berrange),
    Add some autoconf helper macros for checking for libraries (Daniel P. Berrange),
    build: require avahi instead of avahi-libs on rhel5. (Yufang Zhang),
    util: reduce syscalls for virGetDeviceID (Eric Blake),
    pass stub driver name instead of pciFindStubDriver (Chunyan Liu),
    qemu: add usb-net caps flag (Guannan Ren),
    qemu: add usb-serial support (Guannan Ren),
    qemu: add usb-serial caps flag (Guannan Ren),
    maint: distribute libvirtd.service.in (Eric Blake),
    Add RESUME event listener to qemu monitor. (Andres Lagar-Cavilla),
    nwfilter: Remove unprivileged code path to set base (John Ferlan),
    Make TLS support conditional (Daniel P. Berrange),
    qemu: Relax hard RSS limit (Michal Privoznik),
    S390: Enable SCLP Console in QEMU driver (J.B. Joret),
    S390: Add SCLP console front end support (J.B. Joret),
    Rename lxc_protocol.x to lxc_monitor_protocol.x (Daniel P. Berrange),
    Add internal APIs for dealing with namespaces (Daniel P. Berrange),
    Add a way to return FDs to the RPC caller (Daniel P. Berrange),
    Fix receiving of file descriptors from server (Daniel P. Berrange),
    Move qemu-XXX commands from virsh-host.c to virsh-domain.c (Daniel P. Berrange),
    Ensure we always setup a private mount namespace for LXC controller (Daniel P. Berrange),
    Speed up fallback to legacy non-QMP probing (Daniel P. Berrange),
    build: Add libxenctrl to LIBXL_LIBS (Jim Fehlig),
    build: .service files don't need to be executable (Eric Blake),
    build: properly substitute virtlockd.socket (Eric Blake),
    build: use common .in replacement mechanism (Eric Blake),
    qemu: Check if the shared disk's cdbfilter conflicts with others (Osier Yang),
    qemu: set unpriv_sgio when starting domain and attaching disk (Osier Yang),
    conf: Parse and format the new XML (Osier Yang),
    qemu: Add a hash table for the shared disks (Osier Yang),
    util: Prepare helpers for unpriv_sgio setting (Osier Yang),
    snapshot: qemu: Allow redefinition of external snapshots (Peter Krempa),
    snapshot: qemu: Separate logic blocks with newlines (Peter Krempa),
    snapshot: conf: Make virDomainSnapshotIsExternal more reusable (Peter Krempa),
    qemu: Implement virDomainOpenChannel API (John Eckersberg),
    conf: Add unix socket support to virChrdevOpen (John Eckersberg),
    conf: Rename console-specific identifiers to be more generic (John Eckersberg),
    conf: Rename virconsole.* to virchrdev.* (John Eckersberg),
    api: Add API to tunnel a guest channel via stream (John Eckersberg),
    network: fix check for ambiguous lookup (Eric Blake),
    Check and handle select() errors from waitsocket(). (John Ferlan),
    tests: check and handle error for virAsprintf() calls (John Ferlan),
    Check return on mkdir for LOCKSPACE_DIR (John Ferlan),
    vmware: silence Coverity warning (John Ferlan),
    Install virtlockd.{socket,service} non executable (Guido Günther),
    qemu: Don't parse log output when starting up a domain (Michal Privoznik),
    build: use autobuild module to make build logs nicer (Eric Blake),
    maint: update to latest gnulib (Eric Blake),
    sanlock: Chown lease files as well (Michal Privoznik),
    python: Adapt to virevent rename (Michal Privoznik),
    qemu: Convert some APIs to use qemuDomObjFromDomain (Michal Privoznik),
    qemu: Relax locking in DomainHasManagedSaveImage and DomainMonitorCommand (Michal Privoznik),
    S390: Re-enable capability probing for virtio devices. (Viktor Mihajlovski),
    Sort util files in Makefile.am alphabetically (Daniel P. Berrange),
    Rename virterror.c virterror_internal.h to virerror.{c,h} (Daniel P. Berrange),
    Rename xml.{c,h} to virxml.{c,h} (Daniel P. Berrange),
    Rename uuid.{c,h} to viruuid.{c,h} (Daniel P. Berrange),
    Rename util.{c,h} to virutil.{c,h} (Daniel P. Berrange),
    Rename threads.{c,h} to virthread.{c,h} (Daniel P. Berrange),
    Rename threadpool.{c,h} to virthreadpool.{c,h} (Daniel P. Berrange),
    Rename sysinfo.{c,h} to virsysinfo.{c,h} (Daniel P. Berrange),
    Rename storage_file.{c,h} to virstoragefile.{c,h} (Daniel P. Berrange),
    Rename stats_linux.{c,h} to virstatslinux.{c,h} (Daniel P. Berrange),
    Rename sexpr.{c,h} to virsexpr.{c,h} (Daniel P. Berrange),
    Merge processinfo.{c,h} into virprocess.{c,h} (Daniel P. Berrange),
    Rename pci.{c,h} to virpci.{c,h} (Daniel P. Berrange),
    Rename memory.{c,h} to viralloc.{c,h} (Daniel P. Berrange),
    Rename logging.{c,h} to virlog.{c,h} (Daniel P. Berrange),
    Rename json.{c,h} to virjson.{c,h} (Daniel P. Berrange),
    Rename iptables.{c,h} to viriptables.{c,h} (Daniel P. Berrange),
    Rename hostusb.{c,h} to virusb.{c,h} (Daniel P. Berrange),
    Rename hooks.{c,h} to virhook.{c,h} (Daniel P. Berrange),
    Rename event_poll.{c,h} to vireventpoll.{c,h} (Daniel P. Berrange),
    Rename event.{c,h} to virevent.{c,h} (Daniel P. Berrange),
    Rename ebtables.{c,h} to virebtables.{c,h} (Daniel P. Berrange),
    Rename dnsmasq.{c,h} to virdnsmasq.{c,h} (Daniel P. Berrange),
    Rename conf.{c,h} to virconf.{c,h} (Daniel P. Berrange),
    Rename command.{c,h} to vircommand.{c,h} (Daniel P. Berrange),
    Rename buf.{c,h} to virbuffer.{c,h} (Daniel P. Berrange),
    Rename bitmap.{c,h} to virbitmap.{c,h} (Daniel P. Berrange),
    Rename cgroup.{h,c} to vircgroup.{h,c} (Daniel P. Berrange),
    Support all backend serial devices for pSeries guest (Li Zhang),
    Remove QEMU_CAPS_NO_ACPI capability for non-x86 platform (Li Zhang),
    Set std VGA model as default model for ppc64. (Li Zhang),
    Add sysinfo data and enable virSysinfoRead test case for POWER (Li Zhang),
    util: add missing error log messages when failing to get netlink VFINFO (Laine Stump),
    security: fix #endif comment in security_stack.h (Ján Tomko),
    build: use strchr now that we can work around broken gcc (Eric Blake),
    Fix arch datatype in vahControl in virt-aa-helper.c (Daniel P. Berrange),
    Change string form of VIR_ARCH_ITANIUM back to ia64 (Daniel P. Berrange),
    conf: eliminate redundant use of VIR_ALLOC (Martin Kletzander),
    Fix libxl driver for virArch changes (Daniel P. Berrange),
    Fix test cases for virArch changes (Daniel P. Berrange),
    Fix XenAPI driver for virArch changes (Daniel P. Berrange),
    Export all symbols from virarch.{c,h} to drivers/tests/etc (Daniel P. Berrange),
    Convert QEMU capabilities code to use virArch (Daniel P. Berrange),
    spec: Do not install *.py[co] in python examples (Jiri Denemark),
    Convert CPU APIs to use virArch (Daniel P. Berrange),
    Convert capabilities / domain_conf to use virArch (Daniel P. Berrange),
    Convert QEMU command line builder to virArch APIs (Daniel P. Berrange),
    Convert nodeGetInfo to virArch APIs (Daniel P. Berrange),
    Introduce a set of APIs for managing architectures (Daniel P. Berrange),
    build: Fix AUTHORS generation (Jiri Denemark),
    network: fix indentation of networkDnsmasqConfContents (Laine Stump),
    .gitignore: add tests/sysinfotest (Cole Robinson),
    hostusb: Move USB_DEVFS define to hostusb.h to fix the build (Cole Robinson),
    daemon: Preface polkit error output with 'polkit:' (Cole Robinson),
    Add support for hotplug/unplug of host misc devices in LXC (Daniel P. Berrange),
    Add support for hotplug/unplug of host storage devices in LXC (Daniel P. Berrange),
    Add support for hotplug/unplug of USB host devices in LXC (Daniel P. Berrange),
    Add support for hotplug/unplug of NIC devices in LXC (Daniel P. Berrange),
    Add support for hotplug/unplug of disk devices in LXC (Daniel P. Berrange),
    Add support for attach/detach/update hostdev devices in config for LXC (Daniel P. Berrange),
    Add support for attach/detach/update disk devices in config for LXC (Daniel P. Berrange),
    Add support for attach/detach/update net devices in config for LXC (Daniel P. Berrange),
    Add basic driver API framework for device attach/detach support in LXC (Daniel P. Berrange),
    Add support for misc host device passthrough with LXC (Daniel P. Berrange),
    Add support for storage host device passthrough with LXC (Daniel P. Berrange),
    Add support for USB host device passthrough with LXC (Daniel P. Berrange),
    Add support for disks with LXC (Daniel P. Berrange),
    Add support for SELinux labelling of hostdev storage/misc devices (Daniel P. Berrange),
    Refactor SELinux security driver hostdev labelling (Daniel P. Berrange),
    Allow passing a vroot into security manager hostdev labelling (Daniel P. Berrange),
    Skip bulk relabelling of resources in SELinux driver when used with LXC (Daniel P. Berrange),
    Refactor LXC NIC creation to allow reuse by hotplug code (Daniel P. Berrange),
    Add support for <hostdev mode="capabilities"> (Daniel P. Berrange),
    tests: Add tests for sysinfo (Viktor Mihajlovski),
    conf: cpu: Break some long lines (Peter Krempa),
    conf: cpu: Refactor parsing of vendor_id and fallback attributes (Peter Krempa),
    conf: cpu: Fix memory leak when specifying cpu vendor_id manually (Peter Krempa),
    conf: cpu: Fix parsing of vendor_id (Ken ICHIKAWA),
    Support custom 'svirt_tcg_t' context for TCG based guests (Daniel P. Berrange),
    tests: add one -device video device testcase (Guannan Ren),
    qemu: use newer -device video device in qemu commandline (Guannan Ren),
    conf: add optional attribte primary to video <model> element (Guannan Ren),
    qemu: add qemu vga devices caps and one cap to mark them usable (Guannan Ren)
  • Cleanups:
    virlog: remove old code comment (Doug Goldstein),
    rpc: Revert Coverity tag message (John Ferlan),
    rpc: Remove unnecessary calls (John Ferlan),
    network: Remove dead code getting, but not using ipdef (John Ferlan),
    esx: No need to check for objectSpec (John Ferlan),
    parallels: Remove unused JSON fetch of "OS" (John Ferlan),
    virsh: Remove unused setting of 'br_node' and 'if_node' (John Ferlan),
    util: Remove the unused setting of 'res' for virHashLookup return (John Ferlan),
    locking: Remove unnecessary setting of lockspace (John Ferlan),
    maint: don't distribute generated .def files (Eric Blake),
    spec: remove redundant %if (Eric Blake),
    libvirt.h.in: Fix indentation (Michal Privoznik),
    Fix wrong indentation for virDomainState (Claudio Bley),
    tests: Remove remnants of removing the fake emulator output (John Ferlan),
    phyp: Remove deadcode referencing exit_status (John Ferlan),
    build: avoid compiler warning (Eric Blake),
    maint: formatting cleanups in buf.c (Eric Blake),
    conf: minor indentation cleanups (Martin Kletzander)