[libvirt PATCH 09/10] virStorageAdapterParseXML: Use virXMLProp*
Michal Prívozník
mprivozn at redhat.com
Thu May 20 09:55:32 UTC 2021
On 5/19/21 4:10 PM, Tim Wiederhake wrote:
> Signed-off-by: Tim Wiederhake <twiederh at redhat.com>
> ---
> src/conf/storage_adapter_conf.c | 30 +++++++++++-------------------
> 1 file changed, 11 insertions(+), 19 deletions(-)
>
> diff --git a/src/conf/storage_adapter_conf.c b/src/conf/storage_adapter_conf.c
> index a834eee81f..e93b26f06f 100644
> --- a/src/conf/storage_adapter_conf.c
> +++ b/src/conf/storage_adapter_conf.c
> @@ -170,31 +170,23 @@ virStorageAdapterParseXML(virStorageAdapter *adapter,
> {
> int type;
> VIR_XPATH_NODE_AUTORESTORE(ctxt)
> - g_autofree char *adapter_type = NULL;
>
> ctxt->node = node;
>
> - if ((adapter_type = virXMLPropString(node, "type"))) {
> - if ((type = virStorageAdapterTypeFromString(adapter_type)) <= 0) {
> - virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
> - _("Unknown pool adapter type '%s'"),
> - adapter_type);
> + if ((type = virXMLPropEnum(node, "type", virStorageAdapterTypeFromString, VIR_XML_PROP_NONZERO, &adapter->type)) < 0)
Whoa, that's a very long line :-)
> return -1;
> - }
> - adapter->type = type;
>
> - if ((adapter->type == VIR_STORAGE_ADAPTER_TYPE_FC_HOST) &&
> - (virStorageAdapterParseXMLFCHost(node, &adapter->data.fchost)) < 0)
> - return -1;
> + if (type == 0)
> + return virStorageAdapterParseXMLLegacy(node, ctxt, adapter);
>
> - if ((adapter->type == VIR_STORAGE_ADAPTER_TYPE_SCSI_HOST) &&
> - (virStorageAdapterParseXMLSCSIHost(node, ctxt,
> - &adapter->data.scsi_host)) < 0)
> - return -1;
> - } else {
> - if (virStorageAdapterParseXMLLegacy(node, ctxt, adapter) < 0)
> - return -1;
> - }
> + if ((adapter->type == VIR_STORAGE_ADAPTER_TYPE_FC_HOST) &&
> + (virStorageAdapterParseXMLFCHost(node, &adapter->data.fchost)) < 0)
> + return -1;
> +
> + if ((adapter->type == VIR_STORAGE_ADAPTER_TYPE_SCSI_HOST) &&
> + (virStorageAdapterParseXMLSCSIHost(node, ctxt,
> + &adapter->data.scsi_host)) < 0)
> + return -1;
>
> return 0;
> }
>
Michal
More information about the libvir-list
mailing list