On 03/03/2010 01:57 PM, Eric Blake wrote:
According to Daniel P. Berrange on 3/3/2010 11:48 AM:
> The storage backend implementations all presume that the XML parser
> is validating correctness of the source specification. The check for
> a source device was lost at some point. This allowed for a potential
> crash in the disk backend. Re-introduce the sanity check
>
...
> +++ b/src/conf/storage_conf.c
> @@ -689,6 +689,15 @@ virStoragePoolDefParseXML(xmlXPathContextPtr ctxt) {
> }
> }
>
> + /* If DEVICE is the only source type, then its required */
s/its/it's/
> + if (options->flags == VIR_STORAGE_POOL_SOURCE_DEVICE) {
> + if (!ret->source.ndevice) {
> + virStorageReportError(VIR_ERR_XML_ERROR,
> + "%s", _("missing storage pool
source device name"));
> + goto cleanup;
> + }
> + }
ACK.
+1
Dave