mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
Since 9f781da69de02745acb719e78982df9aeccfcd7b Resolve a libvirtd crash in virStoragePoolSourceFindDuplicate() when there is an existing SCSI pool defined with adapter type as 'scsi_host' and defining a new SCSI pool with adapter type as 'fc_host' and parent attribute missing or vice versa. For example, if there is an existing SCSI pool with adapter type as 'scsi_host' defined using the following XML <pool type='scsi'> <name>TEST_SCSI_POOL</name> <source> <adapter type='scsi_host' name='scsi_host1'/> </source> <target> <path>/dev/disk/by-path</path> </target> </pool> When defining another SCSI pool with adapter type as 'fc_host' using the following XML will crash libvirtd <pool type='scsi'> <name>TEST_SCSI_FC_POOL</name> <source> <adapter type='fc_host' wwnn='1234567890abcdef' wwpn='abcdef1234567890'/> </source> <target> <path>/dev/disk/by-path</path> </target> </pool> Same is true for the reverse case as well where there exists a SCSI pool with adapter type as 'fc_host' and another SCSI pool is defined with adapter type as 'scsi_host'. This happens because for fc_host 'name' is optional attribute whereas for scsi_host its mandatory. However the check in libvirt for finding duplicate storage pools didn't take that into account while comparing Signed-off-by: Pradipta Kr. Banerjee <bpradip@in.ibm.com>
…
…
LibVirt : simple API for virtualization Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). It is free software available under the GNU Lesser General Public License. Virtualization of the Linux Operating System means the ability to run multiple instances of Operating Systems concurrently on a single hardware system where the basic resources are driven by a Linux instance. The library aim at providing long term stable C API initially for the Xen paravirtualization but should be able to integrate other virtualization mechanisms if needed. Daniel Veillard <veillard@redhat.com>
Description
Libvirt provides a portable, long term stable C API for managing the
virtualization technologies provided by many operating systems. It
includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware
vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER
Hypervisor.
Languages
C
94.8%
Python
2%
Meson
0.9%
Shell
0.8%
Dockerfile
0.6%
Other
0.8%