mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
virDomainBackupDiskDefParseXML: Use virXMLProp*
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
parent
81e770c2f1
commit
14c803cb82
@ -106,10 +106,6 @@ virDomainBackupDiskDefParseXML(xmlNodePtr node,
|
|||||||
g_autofree char *type = NULL;
|
g_autofree char *type = NULL;
|
||||||
g_autofree char *format = NULL;
|
g_autofree char *format = NULL;
|
||||||
g_autofree char *idx = NULL;
|
g_autofree char *idx = NULL;
|
||||||
g_autofree char *backup = NULL;
|
|
||||||
g_autofree char *state = NULL;
|
|
||||||
g_autofree char *backupmode = NULL;
|
|
||||||
int tmp;
|
|
||||||
xmlNodePtr srcNode;
|
xmlNodePtr srcNode;
|
||||||
unsigned int storageSourceParseFlags = 0;
|
unsigned int storageSourceParseFlags = 0;
|
||||||
bool internal = flags & VIR_DOMAIN_BACKUP_PARSE_INTERNAL;
|
bool internal = flags & VIR_DOMAIN_BACKUP_PARSE_INTERNAL;
|
||||||
@ -127,15 +123,9 @@ virDomainBackupDiskDefParseXML(xmlNodePtr node,
|
|||||||
|
|
||||||
def->backup = VIR_TRISTATE_BOOL_YES;
|
def->backup = VIR_TRISTATE_BOOL_YES;
|
||||||
|
|
||||||
if ((backup = virXMLPropString(node, "backup"))) {
|
if (virXMLPropTristateBool(node, "backup", VIR_XML_PROP_NONE,
|
||||||
if ((tmp = virTristateBoolTypeFromString(backup)) <= 0) {
|
&def->backup) < 0)
|
||||||
virReportError(VIR_ERR_XML_ERROR,
|
|
||||||
_("invalid disk 'backup' state '%s'"), backup);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
|
||||||
|
|
||||||
def->backup = tmp;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* don't parse anything else if backup is disabled */
|
/* don't parse anything else if backup is disabled */
|
||||||
if (def->backup == VIR_TRISTATE_BOOL_NO)
|
if (def->backup == VIR_TRISTATE_BOOL_NO)
|
||||||
@ -146,30 +136,20 @@ virDomainBackupDiskDefParseXML(xmlNodePtr node,
|
|||||||
def->exportbitmap = virXMLPropString(node, "exportbitmap");
|
def->exportbitmap = virXMLPropString(node, "exportbitmap");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((backupmode = virXMLPropString(node, "backupmode"))) {
|
if (virXMLPropEnum(node, "backupmode",
|
||||||
if ((tmp = virDomainBackupDiskBackupModeTypeFromString(backupmode)) < 0) {
|
virDomainBackupDiskBackupModeTypeFromString,
|
||||||
virReportError(VIR_ERR_XML_ERROR,
|
VIR_XML_PROP_NONE, &def->backupmode) < 0)
|
||||||
_("invalid backupmode '%s' of disk '%s'"),
|
|
||||||
backupmode, def->name);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
|
||||||
|
|
||||||
def->backupmode = tmp;
|
|
||||||
}
|
|
||||||
|
|
||||||
def->incremental = virXMLPropString(node, "incremental");
|
def->incremental = virXMLPropString(node, "incremental");
|
||||||
|
|
||||||
if (internal) {
|
if (internal) {
|
||||||
if (!(state = virXMLPropString(node, "state")) ||
|
if (virXMLPropEnum(node, "state",
|
||||||
(tmp = virDomainBackupDiskStateTypeFromString(state)) < 0) {
|
virDomainBackupDiskStateTypeFromString,
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
VIR_XML_PROP_REQUIRED, &def->state) < 0)
|
||||||
_("disk '%s' backup state wrong or missing'"), def->name);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
def->state = tmp;
|
|
||||||
}
|
|
||||||
|
|
||||||
type = virXMLPropString(node, "type");
|
type = virXMLPropString(node, "type");
|
||||||
format = virXPathString("string(./driver/@type)", ctxt);
|
format = virXPathString("string(./driver/@type)", ctxt);
|
||||||
if (internal)
|
if (internal)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user