From: Peter Krempa Date: Tue, 18 Oct 2022 11:41:04 +0000 (+0200) Subject: nodedev|test: Implement support for validating node device XMLs X-Git-Tag: v8.10.0-rc1~268 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=295908688d00d27279522f701b8d0795ea62ae76;p=thirdparty%2Flibvirt.git nodedev|test: Implement support for validating node device XMLs Signed-off-by: Peter Krempa Reviewed-by: Jonathon Jongsma --- diff --git a/src/node_device/node_device_driver.c b/src/node_device/node_device_driver.c index 73a7d64145..355ab31745 100644 --- a/src/node_device/node_device_driver.c +++ b/src/node_device/node_device_driver.c @@ -879,8 +879,9 @@ nodeDeviceCreateXML(virConnectPtr conn, g_autofree char *wwpn = NULL; virNodeDevicePtr device = NULL; const char *virt_type = NULL; + bool validate = flags & VIR_NODE_DEVICE_CREATE_XML_VALIDATE; - virCheckFlags(0, NULL); + virCheckFlags(VIR_NODE_DEVICE_CREATE_XML_VALIDATE, NULL); if (nodeDeviceInitWait() < 0) return NULL; @@ -888,7 +889,7 @@ nodeDeviceCreateXML(virConnectPtr conn, virt_type = virConnectGetType(conn); if (!(def = virNodeDeviceDefParse(xmlDesc, NULL, CREATE_DEVICE, virt_type, - &driver->parserCallbacks, NULL, false))) + &driver->parserCallbacks, NULL, validate))) return NULL; if (virNodeDeviceCreateXMLEnsureACL(conn, def) < 0) @@ -1400,8 +1401,9 @@ nodeDeviceDefineXML(virConnect *conn, const char *virt_type = NULL; g_autofree char *uuid = NULL; g_autofree char *name = NULL; + bool validate = flags & VIR_NODE_DEVICE_DEFINE_XML_VALIDATE; - virCheckFlags(0, NULL); + virCheckFlags(VIR_NODE_DEVICE_DEFINE_XML_VALIDATE, NULL); if (nodeDeviceInitWait() < 0) return NULL; @@ -1409,7 +1411,7 @@ nodeDeviceDefineXML(virConnect *conn, virt_type = virConnectGetType(conn); if (!(def = virNodeDeviceDefParse(xmlDesc, NULL, CREATE_DEVICE, virt_type, - &driver->parserCallbacks, NULL, false))) + &driver->parserCallbacks, NULL, validate))) return NULL; if (virNodeDeviceDefineXMLEnsureACL(conn, def) < 0) diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 9b397e66b1..58c2a02561 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -7688,10 +7688,12 @@ testNodeDeviceCreateXML(virConnectPtr conn, virNodeDeviceDef *objdef; g_autofree char *wwnn = NULL; g_autofree char *wwpn = NULL; + bool validate = flags & VIR_NODE_DEVICE_CREATE_XML_VALIDATE; - virCheckFlags(0, NULL); + virCheckFlags(VIR_NODE_DEVICE_CREATE_XML_VALIDATE, NULL); - if (!(def = virNodeDeviceDefParse(xmlDesc, NULL, CREATE_DEVICE, NULL, NULL, NULL, false))) + if (!(def = virNodeDeviceDefParse(xmlDesc, NULL, CREATE_DEVICE, NULL, NULL, + NULL, validate))) goto cleanup; /* We run this simply for validation - it essentially validates that