[libvirt] [PATCH 8/9] Implement empty post parse callbacks for all drivers

Peter Krempa pkrempa at redhat.com
Tue Oct 14 07:29:12 UTC 2014


To allow easy implementation of a callback check this patch adds empty
post parse callbacks to drivers that were missing them.
---
 src/bhyve/bhyve_domain.c         | 10 ++++++++++
 src/parallels/parallels_driver.c | 21 +++++++++++++++++++++
 src/phyp/phyp_driver.c           | 29 ++++++++++++++++++++++++++++-
 src/uml/uml_driver.c             | 10 ++++++++++
 src/vbox/vbox_common.c           | 19 +++++++++++++++++++
 src/vmware/vmware_driver.c       | 24 +++++++++++++++++++++++-
 src/vmx/vmx.c                    | 18 ++++++++++++++++++
 src/xenapi/xenapi_driver.c       | 10 ++++++++++
 8 files changed, 139 insertions(+), 2 deletions(-)

diff --git a/src/bhyve/bhyve_domain.c b/src/bhyve/bhyve_domain.c
index 7c7bec3..ecb1758 100644
--- a/src/bhyve/bhyve_domain.c
+++ b/src/bhyve/bhyve_domain.c
@@ -70,6 +70,16 @@ bhyveDomainDefPostParse(virDomainDefPtr def,
     return 0;
 }

+static int
+bhyveDomainDeviceDefPostParse(virDomainDeviceDefPtr dev ATTRIBUTE_UNUSED,
+                              const virDomainDef *def ATTRIBUTE_UNUSED,
+                              virCapsPtr caps ATTRIBUTE_UNUSED,
+                              void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
 virDomainDefParserConfig virBhyveDriverDomainDefParserConfig = {
+    .devicesPostParseCallback = bhyveDomainDeviceDefPostParse,
     .domainPostParseCallback = bhyveDomainDefPostParse,
 };
diff --git a/src/parallels/parallels_driver.c b/src/parallels/parallels_driver.c
index 516a296..04c4bb3 100644
--- a/src/parallels/parallels_driver.c
+++ b/src/parallels/parallels_driver.c
@@ -915,8 +915,29 @@ parallelsLoadDomains(parallelsConnPtr privconn, const char *domain_name)
 }


+static int
+parallelsDomainDefPostParse(virDomainDefPtr def ATTRIBUTE_UNUSED,
+                            virCapsPtr caps ATTRIBUTE_UNUSED,
+                            void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+
+static int
+parallelsDomainDeviceDefPostParse(virDomainDeviceDefPtr dev ATTRIBUTE_UNUSED,
+                                  const virDomainDef *def ATTRIBUTE_UNUSED,
+                                  virCapsPtr caps ATTRIBUTE_UNUSED,
+                                  void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+
 virDomainDefParserConfig parallelsDomainDefParserConfig = {
     .macPrefix = {0x42, 0x1C, 0x00},
+    .devicesPostParseCallback = parallelsDomainDeviceDefPostParse,
+    .domainPostParseCallback = parallelsDomainDefPostParse,
 };


diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c
index 25f7f2d..6a5a560 100644
--- a/src/phyp/phyp_driver.c
+++ b/src/phyp/phyp_driver.c
@@ -1054,6 +1054,32 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth,
     return session;
 }

+
+static int
+phypDomainDefPostParse(virDomainDefPtr def ATTRIBUTE_UNUSED,
+                       virCapsPtr caps ATTRIBUTE_UNUSED,
+                       void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+
+static int
+phypDomainDeviceDefPostParse(virDomainDeviceDefPtr dev ATTRIBUTE_UNUSED,
+                             const virDomainDef *def ATTRIBUTE_UNUSED,
+                             virCapsPtr caps ATTRIBUTE_UNUSED,
+                             void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+
+virDomainDefParserConfig virPhypDriverDomainDefParserConfig = {
+    .devicesPostParseCallback = phypDomainDeviceDefPostParse,
+    .domainPostParseCallback = phypDomainDefPostParse,
+};
+
+
 static virDrvOpenStatus
 phypConnectOpen(virConnectPtr conn,
                 virConnectAuthPtr auth, unsigned int flags)
@@ -1131,7 +1157,8 @@ phypConnectOpen(virConnectPtr conn,
     if ((phyp_driver->caps = phypCapsInit()) == NULL)
         goto failure;

-    if (!(phyp_driver->xmlopt = virDomainXMLOptionNew(NULL, NULL, NULL)))
+    if (!(phyp_driver->xmlopt = virDomainXMLOptionNew(&virPhypDriverDomainDefParserConfig,
+                                                      NULL, NULL)))
         goto failure;

     conn->privateData = phyp_driver;
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
index 2a40149..7e25861 100644
--- a/src/uml/uml_driver.c
+++ b/src/uml/uml_driver.c
@@ -444,8 +444,18 @@ umlDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
 }


+static int
+umlDomainDefPostParse(virDomainDefPtr def ATTRIBUTE_UNUSED,
+                      virCapsPtr caps ATTRIBUTE_UNUSED,
+                      void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+
 virDomainDefParserConfig umlDriverDomainDefParserConfig = {
     .devicesPostParseCallback = umlDomainDeviceDefPostParse,
+    .domainPostParseCallback = umlDomainDefPostParse,
 };


diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c
index 44270ff..2170dc1 100644
--- a/src/vbox/vbox_common.c
+++ b/src/vbox/vbox_common.c
@@ -314,8 +314,27 @@ static char *vboxGenerateMediumName(PRUint32  storageBus,
     return name;
 }

+static int
+vboxDomainDefPostParse(virDomainDefPtr def ATTRIBUTE_UNUSED,
+                       virCapsPtr caps ATTRIBUTE_UNUSED,
+                       void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+static int
+vboxDomainDeviceDefPostParse(virDomainDeviceDefPtr dev ATTRIBUTE_UNUSED,
+                             const virDomainDef *def ATTRIBUTE_UNUSED,
+                             virCapsPtr caps ATTRIBUTE_UNUSED,
+                             void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
 static virDomainDefParserConfig vboxDomainDefParserConfig = {
     .macPrefix = { 0x08, 0x00, 0x27 },
+    .devicesPostParseCallback = vboxDomainDeviceDefPostParse,
+    .domainPostParseCallback = vboxDomainDefPostParse,
 };

 static virDomainXMLOptionPtr
diff --git a/src/vmware/vmware_driver.c b/src/vmware/vmware_driver.c
index 6edc0bc..22ce3a3 100644
--- a/src/vmware/vmware_driver.c
+++ b/src/vmware/vmware_driver.c
@@ -82,13 +82,35 @@ vmwareDataFreeFunc(void *data)
     VIR_FREE(dom);
 }

+static int
+vmwareDomainDefPostParse(virDomainDefPtr def ATTRIBUTE_UNUSED,
+                         virCapsPtr caps ATTRIBUTE_UNUSED,
+                         void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+static int
+vmwareDomainDeviceDefPostParse(virDomainDeviceDefPtr dev ATTRIBUTE_UNUSED,
+                               const virDomainDef *def ATTRIBUTE_UNUSED,
+                               virCapsPtr caps ATTRIBUTE_UNUSED,
+                               void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+virDomainDefParserConfig vmwareDomainDefParserConfig = {
+    .devicesPostParseCallback = vmwareDomainDeviceDefPostParse,
+    .domainPostParseCallback = vmwareDomainDefPostParse,
+};
+
 static virDomainXMLOptionPtr
 vmwareDomainXMLConfigInit(void)
 {
     virDomainXMLPrivateDataCallbacks priv = { .alloc = vmwareDataAllocFunc,
                                               .free = vmwareDataFreeFunc };

-    return virDomainXMLOptionNew(NULL, &priv, NULL);
+    return virDomainXMLOptionNew(&vmwareDomainDefParserConfig, &priv, NULL);
 }

 static virDrvOpenStatus
diff --git a/src/vmx/vmx.c b/src/vmx/vmx.c
index cd6c51e..389a012 100644
--- a/src/vmx/vmx.c
+++ b/src/vmx/vmx.c
@@ -523,10 +523,28 @@ VIR_ENUM_IMPL(virVMXControllerModelSCSI, VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LAST,
 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  * Helpers
  */
+static int
+vmxDomainDefPostParse(virDomainDefPtr def ATTRIBUTE_UNUSED,
+                      virCapsPtr caps ATTRIBUTE_UNUSED,
+                      void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+static int
+vmxDomainDeviceDefPostParse(virDomainDeviceDefPtr dev ATTRIBUTE_UNUSED,
+                            const virDomainDef *def ATTRIBUTE_UNUSED,
+                            virCapsPtr caps ATTRIBUTE_UNUSED,
+                            void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}

 virDomainDefParserConfig virVMXDomainDefParserConfig = {
     .hasWideSCSIBus = true,
     .macPrefix = {0x00, 0x0c, 0x29},
+    .devicesPostParseCallback = vmxDomainDeviceDefPostParse,
+    .domainPostParseCallback = vmxDomainDefPostParse,
 };


diff --git a/src/xenapi/xenapi_driver.c b/src/xenapi/xenapi_driver.c
index e4fa7cd..a448347 100644
--- a/src/xenapi/xenapi_driver.c
+++ b/src/xenapi/xenapi_driver.c
@@ -69,8 +69,18 @@ xenapiDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
 }


+static int
+xenapiDomainDefPostParse(virDomainDefPtr def ATTRIBUTE_UNUSED,
+                         virCapsPtr caps ATTRIBUTE_UNUSED,
+                         void *opaque ATTRIBUTE_UNUSED)
+{
+    return 0;
+}
+
+
 virDomainDefParserConfig xenapiDomainDefParserConfig = {
     .devicesPostParseCallback = xenapiDomainDeviceDefPostParse,
+    .domainPostParseCallback = xenapiDomainDefPostParse,
 };


-- 
2.1.0




More information about the libvir-list mailing list