As scheduled I just tagged the git tree and pushed the tarball and rpms to the usual place: ftp://libvirt.org/libvirt/ the next relase is planned at the end of February. This is a bug fix release, we never had that many security advisories closed in a single release, and there is a lot of various bug fixes so users are really invited to upgrate to the new version ! One clearly identified new feature and a reasonable number of improvements too, so not just bugfixes though :) Features: - network events API (Cédric Bosdonnat) Security: - CVE-2014-0028 event: filter global events by domain:getattr ACL (Eric Blake) - CVE-2014-1447-2 Really don't crash if a connection closes early (Jiri Denemark) - CVE-2014-1447-1 Don't crash if a connection closes early (Jiri Denemark) - CVE-2013-6458-4 qemu: Fix job usage in virDomainGetBlockIoTune (Jiri Denemark) - CVE-2013-6458-3 qemu: Fix job usage in qemuDomainBlockJobImpl (Jiri Denemark) - CVE-2013-6458-2 qemu: Avoid using stale data in virDomainGetBlockInfo (Jiri Denemark) - CVE-2013-6458-1 qemu: Do not access stale data in virDomainBlockStats (Jiri Denemark) - CVE-2013-6457 libxl: avoid crashing if calling `virsh numatune' on inactive domain (Dario Faggioli) - CVE-2013-6436: fix crash in lxcDomainGetMemoryParameters (Martin Kletzander) Documentation: - mention maintenance branches (Eric Blake) - Fix docs for PMWakeup/PMSuspend callback types (Claudio Bley) - storage: fs: Fix comment for virStorageBackendFileSystemDelete (Peter Krempa) - Clarify documentation on possible return values in case of errors (Claudio Bley) - Add Documentation fields to systemd service files (Guido Günther) - add LXC multi console command docs and a example (Chen Hanxiao) - maint: fix comment typos in qemu numa code (Eric Blake) - return paragraph must be last (Eric Blake) - fix layout of code snippets (Eric Blake) - improve event-related documentation (Eric Blake) - virsh: man: Mention that volumes need to be in storage pool for undefine (Peter Krempa) - fix address type for disks (Martin Kletzander) - qemu: fix typo PCi => PCI (Martin Kletzander) - tools: Fix virsh connect man page (Jiri Denemark) - fix a typo in libvirt.h (Chen Hanxiao) - fix recent typo (Eric Blake) - Enhance memoryBacking/locked documentation (Jiri Denemark) - fix double articles bug (Wang Yufei) - Explicitly declaring that nodedev-destroy only works for vHBA (Osier Yang) - fix some typos (Eric Blake) - fix typo in previous patch (Eric Blake) - fix typos in libvirt.h.in (Chen Hanxiao) Portability: - build: fix build on mingw with winpthreads (Eric Blake) - BSD: implement nodeGetMemoryStats (Roman Bogorodskiy) - build: fix bootstrap with older autoconf (Eric Blake) - AArch64: Porting of armv7l conditons to run qemu for aarch64. (Pranavkumar Sawargaonkar) - vmware: os x support is broken (Denis Kondratenko) - tests: fix syntax in previous patch (Eric Blake) - aarch64: Fix sysinfo test. (Richard W.M. Jones) - aarch64: Disable -fstack-protector. (Richard W.M. Jones) - virnettlscontexttest fails with GNUTLS 3.0.28 (Cédric Bosdonnat) - Fix build when default python is python3 (Lénaïc Huard) - specfile: fix make rpm when with_driver_modules is 1 (Laine Stump) - object: require maximal alignment in base class (Eric Blake) - configure: Resolve compile issue in configure.ac (Adam Walters) Bug Fixes: - qemu: Avoid operations on NULL monitor if VM fails early (Peter Krempa) - Fix coverity complain in commandtest.c (Pavel Hrdina) - Fix memory leak in securityselinuxlabeltest.c (Pavel Hrdina) - Fix possible memory leak in util/virxml.c (Pavel Hrdina) - Fix possible memory leak in phyp_driver.c (Pavel Hrdina) - Fix memory leak in openvz_conf.c (Pavel Hrdina) - Fix memory leak in testDomainCreateXMLMixed() (Nehal J Wani) - schema: fix idmap validation (Eric Blake) - event: don't queue NULL event on OOM (Eric Blake) - virt-login-shell: fix regressions in behavior (Eric Blake) - storage: fix crash when listing volumes or undefining a pool (Martin Kletzander) - qemuBuildNicDevStr: Set vectors= on Multiqueue (Michal Privoznik) - libxl: Fix devid init in libxlMakeNicList (Stefan Bader) - LXC: create monitor socket under selinux context of domain (Gao feng) - virsh: Use inactive definition when removing disk from config (Peter Krempa) - virsh: Don't use legacy API if --current is used on device hot(un)plug (Peter Krempa) - virConnect(Un)registerCloseCallback: Unlock @conn prior to error dispatch (Michal Privoznik) - Allow to install apparmor profiles (Guido Günther) - Fix bridge configuration when OUTPUT policy is DROP on the host (Lénaïc Huard) - lxc_controller: Don't leak @name (Michal Privoznik) - qemu: Fix job usage in qemuDomainBlockCopy (Jiri Denemark) - Fix segmentation fault when accessing default qemu machine type (Yudai Yamagish) - event: make deregister return value match docs (Eric Blake) - qemuProcessStop: Don't overwrite any errors (Michal Privoznik) - Fix argument order of qemuMigrationPerformJob(). (Minoru Usui) - libxl: Fix initialization of nictype in libxl_device_nic (Jim Fehlig) - qemu: range check numa memory placement mode (Peter Krempa) - Fix explicit usage of default video PCI slots (Ján Tomko) - maint: avoid nested public calls (Eric Blake) - event: don't overwrite registration error message (Eric Blake) - tests: sysinfotest: Actual/expected were swapped in error message. (Richard W.M. Jones) - domain: don't try to interpret <driver> as virtio config for hostdev interfaces (Laine Stump) - virkeycode: Allow ANSI_A (Michal Privoznik) - interface: Take interface status into account when starting and destroying (Michal Privoznik) - event-test: Unregister close callback (Michal Privoznik) - qemu: re-add hostdev interfaces to hostdev array on libvirtd restart (Laine Stump) - qemu: avoid duplicate security label restore on hostdev attach failure (Laine Stump) - qemu: properly set MaxMemLock when hotplugging with VFIO (Laine Stump) - PanicCheckABIStability: Need to check for existence (John Ferlan) - libxl: fix segfault when domain create fail (Bamvor Jian Zhang) - Fix crash in lxcDomainSetMemoryParameters (Martin Kletzander) - storage: fix bogus target in gluster volume xml (Eric Blake) - Fix crash in virsystemdtest with dbus 1.7.6 (Cédric Bosdonnat) - Fix race leading to crash when setting up dbus watches (Daniel P. Berrange) - libxl: libxl_get_max_cpus returning a libxl error from 4.4 onward (Dario Faggioli) - virsh: domain: Fix undefine with storage of 'volume' disks (Peter Krempa) - qemu: ask for -enable-fips when FIPS is required (Eric Blake) - configure: make --with-test-suite work (Martin Kletzander) - Fix memory leak in virObjectEventCallbackListRemoveID() (Nehal J Wani) - qemu: check for reboot-timeout on monitor (Martin Kletzander) - lxc: return -1 if failed to kill lxc process (Chen Hanxiao) - Add another missing % on %{_libdir} macro (Laine Stump) - Add missing % on %{_libdir} macro in RPM (Daniel P. Berrange) - storage: fix omitted slash in gluster volume URI (Eric Blake) - qemu_process: Read errors from child (Michal Privoznik) - qemu: hotplug: Fix adding USB devices to the driver list (Cole Robinson) - qemu: hotplug: Fix double free on USB collision (Cole Robinson) - qemu: hotplug: Only label hostdev after checking device conflicts (Cole Robinson) - lxcContainerMountFSDevPTS: Unify @ret usage pattern (Chen Hanxiao) - conf: Fix XML formatting of RNG device info (Peter Krempa) - qemu: snapshot: Fix incorrect disk type for auto-generated disks (Peter Krempa) - virThreadPoolFree: Set n(Prio)Workers after the pool is locked (Michal Privoznik) - qemuAgentDispose: Reset lastError (Wangyufei (James)) - Fix memory leak in qemuBuildDriveStr() (Nehal J Wani) - Don't overwrite errors from virConfReadFile (Daniel P. Berrange) - virThreadPoolFree: Join worker threads (Michal Privoznik) - qemu: fix live pinning to memory node on NUMA system (Shivaprasad G Bhat) - storage_driver: Resolve Coverity CHECKED_RETURN warning (John Ferlan) - bridge_driver: Resolve Coverity CHECKED_RETURN warning (John Ferlan) - virnetserverclient: Fix conditional change HAVE_SASL to WITH_SASL (John Ferlan) - virnetserverclient: Remove Coverity DEADCODE warning (John Ferlan) - nwfilter: Remove Coverity DEADCODE warning (John Ferlan) - qemu: report error on attempt to live change virtio-net queues (Laine Stump) - daemon: Run virStateCleanup conditionally (Michal Privoznik) - qemu: default to vfio for nodedev-detach (Laine Stump) - Ensure to zero out the virDomainBlockJobInfo arg (Daniel P. Berrange) - snapshot: conf: Fix NULL dereference when <driver> element is empty (Peter Krempa) Improvements: - event: wire up RPC for server-side network event filtering (Eric Blake) - event: add notion of remoteID for filtering client network events (Eric Blake) - event: track callbackID on daemon side of RPC (Eric Blake) - tests: be more explicit on qcow2 versions in virstoragetest (Eric Blake) - Add Gao feng to the committers list (Gao feng) - maint: ignore transient files during tests (Eric Blake) - storage: FS: Tweak some comments and fix typos (Peter Krempa) - Exercise the ABI stability check code in test suite (Daniel P. Berrange) - storage: Improve error message when a storage backend is missing (Peter Krempa) - storage: lvm: Avoid forward decl of virStorageBackendLogicalDeleteVol (Peter Krempa) - maint: improve VIR_ERR_INVALID_DOMAIN_SNAPSHOT usage (Eric Blake) - maint: improve VIR_ERR_INVALID_NWFILTER usage (Eric Blake) - maint: improve VIR_ERR_INVALID_STREAM usage (Eric Blake) - maint: improve VIR_ERR_INVALID_SECRET usage (Eric Blake) - maint: improve VIR_ERR_INVALID_NODE_DEVICE usage (Eric Blake) - maint: improve VIR_ERR_INVALID_STORAGE_VOL usage (Eric Blake) - maint: improve VIR_ERR_INVALID_STORAGE_POOL usage (Eric Blake) - test driver: Add authentication to test driver. (Richard W.M. Jones) - maint: improve VIR_ERR_INVALID_INTERFACE usage (Eric Blake) - event: clean up client side RPC code (Eric Blake) - Make sure AC_ARG_WITH is always executed (Guido Günther) - maint: improve VIR_ERR_INVALID_NETWORK usage (Eric Blake) - conf: trivial typo fix (Martin Kletzander) - maint: inline VIR_IS*_DOMAIN macro (Eric Blake) - maint: improve VIR_ERR_INVALID_DOMAIN usage (Eric Blake) - event: make network events easier to use without casts (Eric Blake) - event: don't turn offline domain into global event (Eric Blake) - event: don't allow mix of old- and new-style registration (Eric Blake) - event: properly filter count of remaining events (Eric Blake) - Read PCI class from sysfs class file instead of config space. (Thadeu Lima de Souza Cascardo) - event: tighten scope of object_event (Eric Blake) - event: don't let old-style events clobber per-domain events (Eric Blake) - event: rename confusing variable in test, remote drivers (Eric Blake) - event: share state driver between test:///default connections (Eric Blake) - lxc_controller: Fix error message on missing --handshakefd (Michal Privoznik) - maint: inline VIR_IS_CONNECT macro (Eric Blake) - maint: Fix messy include of libvirt_internal.h (Peter Krempa) - maint: improve VIR_ERR_INVALID_CONN usage (Eric Blake) - maint: improve VIR_ERR_OPERATION_DENIED usage (Eric Blake) - qemu: Clean up qemuDomainSetNumaParameters (Peter Krempa) - storage: Use VIR_DELETE_ELEMENT instead of open coding (Peter Krempa) - event: use newer array management macros (Eric Blake) - event: use bool in more places (Eric Blake) - maint: improve VIR_ERR_NO_SUPPORT usage (Eric Blake) - event: remove unneeded virObjectEventGetEventID (Eric Blake) - event: fix doc typos, and doc more public methods (Eric Blake) - maint: reset error on entrance to public API (Eric Blake) - maint: improve error condition style in public API (Eric Blake) - maint: split long lines in invalidArg errors (Eric Blake) - maint: move debug statements first in public API (Eric Blake) - maint: improve debug of libvirt-{qemu,lxc} apis (Eric Blake) - maint: consistent formatting in libvirt.c (Eric Blake) - event: improve public API docs (Eric Blake) - tests: virnetsockettest: Print the error if getifaddrs fails. (Richard W.M. Jones) - maint: update to latest gnulib (Eric Blake) - maint: fix typo in error message (Eric Blake) - interface: Introduce netcfInterfaceObjIsActive (Michal Privoznik) - examples: Resurrect domsuspend example (Michal Privoznik) - libxl: correctly handle affinity reset in virDomainPinVcpu[Flags] (Dario Faggioli) - libxl: implement virDomainPinVcpuFlags (Dario Faggioli) - libxl: implement virDomainGetVcpuPinInfo (Dario Faggioli) - virt-login-shell: clean up usage (Eric Blake) - storage: Avoid forward declaration of virStorageVolDelete (Peter Krempa) - storage: Add gluster pool filter and fix virsh pool listing (Peter Krempa) - snapshot: schema: Split out snapshot disk driver definition (Peter Krempa) - Remove redefinition of bool type when --enable-test-locking (Daniel P. Berrange) - Set the 'container_ttys' env variable for LXC consoles (Daniel P. Berrange) - storage: resize vol against real allocated size (Michal Privoznik) - Support transient attribute on vmware disks (Wout Mertens) - LXC: Change incorrect error report in lxcContainerPivotRoot (Gao feng) - Add debug output when registering event handlers (Daniel P. Berrange) - Remove the event namespace concept (Daniel P. Berrange) - Associate a dispatch function with the event objects (Daniel P. Berrange) - Introduce abstract virNetworkEvent class (Daniel P. Berrange) - Add 'detail' arg to network lifecycle event internals (Daniel P. Berrange) - Update event demo program to support network events too (Daniel P. Berrange) - Move examples/domain-events/event-c to examples/object-events (Daniel P. Berrange) - qemu: add support for -device pvpanic (Hu Tao) - conf: add support for panic device (Hu Tao) - conf: introduce generic ISA address (Hu Tao) - Bump version to 1.2.1 for new dev cycle (Daniel P. Berrange) - rename virBlkioDeviceWeightPtr to virBlkioDevicePtr (Gao feng) - rename virBlkioDeviceWeightArrayClear to virBlkioDeviceArrayClear (Gao feng) - rename virDomainBlkioDeviceWeightParseXML to virDomainBlkioDeviceParseXML (Gao feng) - storage: show gluster option in virsh --version=long (Eric Blake) - Added default case with error for object event dispatching (Cédric Bosdonnat) - Fixed indentation in src/conf/*_event* (Cédric Bosdonnat) - Added network events to the bridged network driver (Cédric Bosdonnat) - Add network events to the remote driver (Cédric Bosdonnat) - Add network events unit tests (Cédric Bosdonnat) - test driver: implemented network events (Cédric Bosdonnat) - Added Network events API and virNetworkEventLifecycle. (Cédric Bosdonnat) - storage_backend_rbd: rename "stat" variable (Michael Chapman) - If we do not specify a readonly mount, we don't need to re-mount it again. (Chen Hanxiao) - daemon/remote.c: renamed remoteDispatchDomainEventSend (Cédric Bosdonnat) - test driver: renamed testDomainEventQueue into testObjectEventQueue (Cédric Bosdonnat) - Extracted common parts of domain_event.[ch] to object_event.[ch] (Cédric Bosdonnat) - Split the virObjectEvent and virDomainEvent* to separate them after (Cédric Bosdonnat) - Renamed virDomainEventTimer to virObjectEventTimer (Cédric Bosdonnat) - Add object event namespaces for the event IDs (Cédric Bosdonnat) - Use virObjectEventPtr instead of virDomainEventPtr (Cédric Bosdonnat) - Create virDomainEventDeviceRemoved and remove the huge union (Cédric Bosdonnat) - Create virDomainEventBalloonChange to get rid of the huge union (Cédric Bosdonnat) - Create virDomainEventTrayChange to get rid of the huge union (Cédric Bosdonnat) - Create virDomainEventDiskChange to get rid of the huge union (Cédric Bosdonnat) - Create virDomainEventBlockJob to get rid of the huge union (Cédric Bosdonnat) - Create virDomainEventGraphics to get rid of the huge union (Cédric Bosdonnat) - Create virDomainEventIOError to get rid of the huge union (Cédric Bosdonnat) - Create virDomainEventWatchdog to get rid of the huge union (Cédric Bosdonnat) - Create virDomainEventRTCChange to get rid of the huge union (Cédric Bosdonnat) - Renamed virDomainEventNewInternal to virDomainEventNew (Cédric Bosdonnat) - Renamed virDomainEventNew* to virDomainEventLifecycleNew* (Cédric Bosdonnat) - Create virDomainEventLifecycle to start removing the huge union (Cédric Bosdonnat) - virObject-ified virDomainEvent (Cédric Bosdonnat) - Created virObjectEventStateRegisterID (Cédric Bosdonnat) - Renamed virDomainEventCallbackList* to virObjectEventCallbackList* (Cédric Bosdonnat) - Renamed virDomainEventState to virObjectEventState (Cédric Bosdonnat) - Renamed virDomainEventQueue to virObjectEventQueue (Cédric Bosdonnat) - Renamed virDomainMeta to virObjectMeta (Cédric Bosdonnat) - Rename virDomainEventCallback to virObjectEventCallback (Cédric Bosdonnat) - Added domain start/stop/define/undefine event unit tests (Cédric Bosdonnat) - spec: clean up libvirtd and virtlockd service mgmt (Michael Chapman) - virtlockd: use common exit path when out-of-memory (Michael Chapman) - virtlockd: improve initscripts (Michael Chapman) - virtlockd: improve systemd units (Michael Chapman) - conf: don't format memtune with unlimited values (Martin Kletzander) - qemu: Fix minor inconsistency in error message (Martin Kletzander) - qemu: Report VIR_DOMAIN_MEMORY_PARAM_UNLIMITED properly (Martin Kletzander) - cgroups: Redefine what "unlimited" means wrt memory limits (Martin Kletzander) - spec: move driver-specific files to driver subpackages (Jim Fehlig) - spec: Define hypervisor-specific files together (Jim Fehlig) - spec: Conditionally specify some hypervisor-specific files (Jim Fehlig) - spec: Fix files list when building without driver modules (Jim Fehlig) - spec: Only add libvirt-daemon pre install script if building with qemu (Jim Fehlig) - spec: Fix unconditional references of nwfilter (Jim Fehlig) - Cgroup: Replace 'newpath' with 'newPath' (Zhou Yimin) - Add qxl ram size to ABI stability check (Ján Tomko) - qemu: Improve error when setting invalid count of vcpus via agent (Peter Krempa) - qemu: hotplug: Mark 2 private functions as static (Cole Robinson) - qemu: Fix indentation in qemuTranslateDiskSourcePool (Peter Krempa) - domainsnapshotxml2xmltest: Add test case for empty driver element (Peter Krempa) - domainsnapshotxml2xmltest: Add existing files as new tests (Peter Krempa) - domainsnapshotxml2xml: Move files with conflicting names (Peter Krempa) - domainsnapshotxml2xmltest: Allow for better testing of snapshots (Peter Krempa) - domainsnapshotxml2xmltest: Clean up labels and use bool instead of int (Peter Krempa) - maint: Kill usage of atoi() (Peter Krempa) - src: Align make output (Michal Privoznik) - tests: add forgotten boot-strict test files (Laine Stump) - qemu: add "-boot strict" to commandline whenever possible (Laine Stump) - qemu: snapshots: Declare supported and unsupported snapshot configs (Peter Krempa) - qemu: Clear old translated pool source (Peter Krempa) - qemu: Refactor disk source string formatting (Peter Krempa) - qemu: Unify formatting of RBD sources (Peter Krempa) - qemu: Split out NBD command generation (Peter Krempa) - qemu: Migrate sheepdog source generation into common function (Peter Krempa) - qemu: Use qemuBuildNetworkDriveURI to handle http/ftp and friends (Peter Krempa) - qemu: Simplify call pattern of qemuBuildDriveURIString (Peter Krempa) - qemu: Split out formatting of network disk source URI (Peter Krempa) - qemu: Refactor qemuTranslateDiskSourcePool (Peter Krempa) - virsh: improve grammar in error message (Eric Blake) - qemu: snapshot: Add functions similar to disk source pool translation (Peter Krempa) - qemu: snapshot: Touch up error message (Peter Krempa) - conf: Add helper do clear disk source authentication struct (Peter Krempa) - qemu: snapshot: Detect internal snapshots also for sheepdog and RBD (Peter Krempa) - conf: Add functions to copy and free network disk source definitions (Peter Krempa) - snapshot: conf: Use common parsing and formatting functions for source (Peter Krempa) - conf: Export disk source formatter and parser (Peter Krempa) - conf: Split out seclabel formating code for disk source (Peter Krempa) - conf: Clean up virDomainDiskSourceDefFormatInternal (Peter Krempa) - conf: Support disk source formatting without needing a virDomainDiskDefPtr (Peter Krempa) - tests: Fix comment for fake storage pool driver (Peter Krempa) - qemuxml2argv: Add test for disk type='volume' with iSCSI pools (Peter Krempa) - qemuxml2argv: Add test to verify correct usage of disk type="volume" (Peter Krempa) - test: Implement fake storage pool driver in qemuxml2argv test (Peter Krempa) - util: Use new array management macros (Osier Yang) Cleanups: - storage: Break long lines and clean up spaces in storage backend header (Peter Krempa) - event: fix typo in previous patch (Eric Blake) - Remove stray semicolon after pragma macros (Daniel P. Berrange) - examples: Remove broken bad example (Peter Krempa) Thanks everybody who contributed to the release in some way, be it with bug reports, ideas, patches, reviews, docs or localizations ! Enjoy ! Daniel -- Daniel Veillard | Open Source and Standards, Red Hat veillard@xxxxxxxxxx | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list