mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 06:05:27 +00:00
conf: Reset disk type if <source> element is completely missing
The disk type is not part of source and thus it's parsed earlier. This bypasses the checks when parsing a disk type='network' if it's completely missing the source. Since there are possible active users of this (it was reported as a problem with openstack) fix it by resetting the disk type to '_FILE' for an empty cdrom which is handled correctly. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
224d269f19
commit
2c37dc7bda
@ -10126,6 +10126,10 @@ virDomainDiskDefParseXML(virDomainXMLOptionPtr xmlopt,
|
||||
}
|
||||
}
|
||||
|
||||
/* Reset def->src->type in case when 'source' was not present */
|
||||
if (!source)
|
||||
def->src->type = VIR_STORAGE_TYPE_FILE;
|
||||
|
||||
/* Only CDROM and Floppy devices are allowed missing source path
|
||||
* to indicate no media present. LUN is for raw access CD-ROMs
|
||||
* that are not attached to a physical device presently */
|
||||
|
@ -25,7 +25,7 @@
|
||||
<readonly/>
|
||||
<address type='drive' controller='0' bus='0' target='0' unit='1'/>
|
||||
</disk>
|
||||
<disk type='volume' device='cdrom'>
|
||||
<disk type='file' device='cdrom'>
|
||||
<driver name='qemu' type='raw'/>
|
||||
<target dev='hdc' bus='ide'/>
|
||||
<readonly/>
|
||||
|
Loading…
Reference in New Issue
Block a user