libvirt/tests
Rayhan Faizel 70e826ec6a conf: Fix rawio/sgio checks for non-scsi hostdev devices
The current hostdev parsing logic sets rawio or sgio even if the hostdev type
is not 'scsi'. The rawio field in virDomainHostdevSubsysSCSI overlaps with
wwpn field in virDomainHostdevSubsysSCSIVHost, consequently setting a bogus
pointer value such as 0x1 or 0x2 from virDomainHostdevSubsysSCSIVHost's
point of view. This leads to a segmentation fault when it attempts to free
wwpn.

While setting sgio does not appear to crash, it shares the same flawed logic
as setting rawio.

Instead, we ensure these are set only after the hostdev type check succeeds.
This patch also adds two test cases to exercise both scenarios.

Fixes: bdb95b520c
Signed-off-by: Rayhan Faizel <rayhan.faizel@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2024-07-03 09:54:43 +02:00
..
bhyveargv2xmldata
bhyvefirmwaredata
bhyvexml2argvdata
bhyvexml2xmloutdata
capabilityschemadata
chxml2xmlin
chxml2xmlout
commanddata
cputestdata
domainbackupxml2xmlin
domainbackupxml2xmlout
domaincapsdata qemucapabilitiestest: Add 'qemu_9.0.0.sparc' capabilities from TCG 2024-07-01 16:13:12 +02:00
domainconfdata
domainschemadata
fchostdata/fc_host
genericxml2xmlindata
genericxml2xmloutdata
interfaceschemadata
libxlxml2domconfigdata
lxcconf2xmldata
lxcxml2xmldata
lxcxml2xmloutdata
networkxml2confdata
networkxml2firewalldata network: add more firewall test cases 2024-06-24 13:51:04 +01:00
networkxml2xmlin
networkxml2xmlout
networkxml2xmlupdatein
networkxml2xmlupdateout
nodedevmdevctldata
nodedevschemadata
nodedevxml2xmlout
nssdata
nwfilterxml2firewalldata
nwfilterxml2xmlin
nwfilterxml2xmlout
qemuagentdata
qemublocktestdata
qemucapabilitiesdata qemucapabilitiesdata: Drop tests relying on <qemu-5.2.0 2024-07-02 09:14:16 +02:00
qemucaps2xmloutdata
qemudomaincheckpointxml2xmlin
qemudomaincheckpointxml2xmlout
qemudomainsnapshotxml2xmlin
qemudomainsnapshotxml2xmlout
qemufirmwaredata qemu_firmware: Pick the right firmware for SEV-SNP guests 2024-06-21 09:59:04 +02:00
qemuhotplugtestcpus
qemuhotplugtestdevices
qemuhotplugtestdomains
qemumemlockdata
qemumigparamsdata
qemumigrationcookiexmldata
qemumonitorjsondata
qemunbdkitdata
qemusecuritydata
qemustatusxml2xmldata
qemuvhostuserdata
qemuxmlactive2xmldata
qemuxmlconfdata conf: Fix rawio/sgio checks for non-scsi hostdev devices 2024-07-03 09:54:43 +02:00
schemas
secretxml2xmlin
securityselinuxhelperdata
securityselinuxlabeldata
storagepoolcapsschemadata
storagepoolschemadata
storagepoolxml2argvdata
storagepoolxml2xmlin
storagepoolxml2xmlout
storagevolschemadata
storagevolxml2argvdata
storagevolxml2xmlin
storagevolxml2xmlout
sysinfodata
vboxsnapshotxmldata
viracpidata
vircaps2xmldata
vircgroupdata
virconfdata
virfilecachedata
virfiledata
virhostcpudata
virjsondata
virmacmaptestdata
virnetdaemondata
virnetdevopenvswitchdata
virnetdevtestdata/sys/class/net
virnetworkportxml2xmldata
virnwfilterbindingxml2xmldata
virpcitestdata
virprocessstatdata
virresctrldata
virscsidata
virshtestdata
virstoragetestdata
virstorageutildata
virusbtestdata/sys_bus_usb/devices
virutiltestdata
vmwareverdata
vmx2xmldata vmx: Accept more serial variations 2024-06-19 14:28:38 +02:00
xlconfigdata
xmconfigdata
xml2vmxdata
.valgrind.supp
bhyveargv2xmlmock.c
bhyveargv2xmltest.c
bhyvexml2argvmock.c
bhyvexml2argvtest.c
bhyvexml2xmltest.c
chxml2xmlmock.c
chxml2xmltest.c
commandhelper.c
commandtest.c
cputest.c
domaincapsmock.c
domaincapstest.c
domainconftest.c
esxutilstest.c
eventtest.c
fchosttest.c
fdstreamtest.c
genericxml2xmltest.c
interfacexml2xmltest.c
libxlmock.c
libxlxml2domconfigtest.c
lxcconf2xmltest.c
lxcxml2xmltest.c
meson.build
metadatatest.c
networkmetadatatest.c
networkxml2conftest.c
networkxml2firewalltest.c network: add more firewall test cases 2024-06-24 13:51:04 +01:00
networkxml2xmltest.c
networkxml2xmlupdatetest.c
nodedevmdevctltest.c
nodedevxml2xmltest.c
nsslinktest.c
nssmock.c
nsstest.c
nwfilterebiptablestest.c
nwfilterxml2firewalltest.c
nwfilterxml2xmltest.c
objecteventtest.c
openvzutilstest.c
openvzutilstest.conf
permitted_file_access.txt
pkix_asn1_tab.c
qemuagenttest.c
qemublocktest.c
qemucapabilitiestest.c
qemucaps2xmlmock.c
qemucaps2xmltest.c
qemucapsprobe.c
qemucapsprobemock.c
qemucommandutiltest.c
qemucpumock.c
qemudomaincheckpointxml2xmltest.c
qemudomainsnapshotxml2xmltest.c
qemufirmwaretest.c
qemuhotplugmock.c
qemuhotplugtest.c
qemumemlocktest.c
qemumigparamstest.c
qemumigrationcookiexmltest.c
qemumonitorjsontest.c qemu_monitor: Allow querying SEV-SNP state in 'query-sev' 2024-06-21 09:35:32 +02:00
qemumonitortestutils.c qemumonitortestutils: Fix G_GNUC_PRINTF annotation of qemuMonitorTestAddErrorResponse() 2024-06-06 09:32:43 +02:00
qemumonitortestutils.h qemumonitortestutils: Fix G_GNUC_PRINTF annotation of qemuMonitorTestAddErrorResponse() 2024-06-06 09:32:43 +02:00
qemunbdkittest.c
qemusecuritymock.c
qemusecuritytest.c qemusecuritytest: drop disk-network-tlsx509-vxhs test case 2024-07-02 09:13:47 +02:00
qemusecuritytest.h
qemuvhostusertest.c
qemuxml2argvmock.c
qemuxmlactivetest.c
qemuxmlconftest.c conf: Fix rawio/sgio checks for non-scsi hostdev devices 2024-07-03 09:54:43 +02:00
scsihosttest.c
seclabeltest.c
secretxml2xmltest.c
securityselinuxhelper.c
securityselinuxlabeltest.c
securityselinuxtest.c
shunloadhelper.c
shunloadtest.c
sockettest.c
ssh.c
storagepoolcapstest.c
storagepoolxml2argvtest.c
storagepoolxml2xmltest.c
storagevolxml2argvtest.c
storagevolxml2xmltest.c
sysinfotest.c
testutils.c
testutils.h
testutilshostcpus.h
testutilslxc.c
testutilslxc.h
testutilsqemu.c
testutilsqemu.h qemu: Drop _virQEMUDriver::hostFips 2024-07-02 09:14:24 +02:00
testutilsqemuschema.c
testutilsqemuschema.h
testutilsxen.c
testutilsxen.h
utiltest.c
vboxsnapshotxmltest.c
viracpitest.c
viralloctest.c
virauthconfigtest.c
virbitmaptest.c
virbuftest.c
vircaps2xmltest.c
vircgroupmock.c
vircgrouptest.c
virconftest.c
vircryptotest.c
virdnsmasqmock.c
virdriverconnvalidatetest.c
virdrivermoduletest.c
virendiantest.c
virerrortest.c
virfilecachemock.c
virfilecachetest.c
virfilemock.c
virfiletest.c
virfilewrapper.c
virfilewrapper.h
virfirewallmock.c
virfirewalltest.c
virgdbusmock.c
virhostcpumock.c
virhostcputest.c
virhostdevmock.c
virhostdevtest.c
virhostidmock.c
viridentitytest.c
viriscsitest.c
virjsontest.c
virkeycodetest.c
virkmodtest.c
virlockspacetest.c
virlogtest.c
virmacmaptest.c
virmigtest.c
virmock.h
virmockstathelpers.c
virnetdaemonmock.c
virnetdaemontest.c
virnetdevbandwidthmock.c
virnetdevbandwidthtest.c
virnetdevmock.c
virnetdevopenvswitchtest.c
virnetdevtest.c
virnetmessagetest.c
virnetserverclientmock.c
virnetserverclienttest.c
virnetsockettest.c
virnettlscontexttest.c
virnettlshelpers.c
virnettlshelpers.h
virnettlssessiontest.c
virnetworkportxml2xmltest.c
virnumamock.c
virnwfilterbindingxml2xmltest.c
virpcimock.c
virpcitest.c
virpcivpdtest.c
virpolkittest.c
virportallocatormock.c
virportallocatortest.c
virprocessmock.c
virprocessstattest.c
virrandommock.c
virresctrltest.c
virrotatingfiletest.c
virschematest.c
virscsitest.c
virsh-auth
virsh-auth.xml
virshtest.c
virstoragetest.c
virstorageutiltest.c
virstringtest.c
virsystemdtest.c
virt-aa-helper-test
virtestmock.c
virtimetest.c
virtypedparamtest.c
viruritest.c
virusbmock.c
virusbtest.c
vmwarevertest.c
vmx2xmltest.c
vshtabletest.c
xlconfigtest.c
xmconfigtest.c
xml2vmxtest.c