]> xenbits.xensource.com Git - libvirt.git/commitdiff
destroy: Implement internal API for vbox driver
authorMichal Privoznik <mprivozn@redhat.com>
Thu, 21 Jul 2011 07:59:16 +0000 (09:59 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 21 Jul 2011 18:41:27 +0000 (20:41 +0200)
src/vbox/vbox_tmpl.c

index f0657284688ebbdcebd99deef0ad8b6aefeb164e..ee0720a3aad50094043e393080f88684d8cb621e 100644 (file)
@@ -1689,7 +1689,10 @@ cleanup:
     return ret;
 }
 
-static int vboxDomainDestroy(virDomainPtr dom) {
+static int
+vboxDomainDestroyFlags(virDomainPtr dom,
+                       unsigned int flags)
+{
     VBOX_OBJECT_CHECK(dom->conn, int, -1);
     IMachine *machine    = NULL;
     vboxIID iid = VBOX_IID_INITIALIZER;
@@ -1698,6 +1701,8 @@ static int vboxDomainDestroy(virDomainPtr dom) {
     PRBool isAccessible  = PR_FALSE;
     nsresult rc;
 
+    virCheckFlags(0, -1);
+
     vboxIIDFromUUID(&iid, dom->uuid);
     rc = VBOX_OBJECT_GET_MACHINE(iid.value, &machine);
     if (NS_FAILED(rc)) {
@@ -1746,6 +1751,12 @@ cleanup:
     return ret;
 }
 
+static int
+vboxDomainDestroy(virDomainPtr dom)
+{
+    return vboxDomainDestroyFlags(dom, 0);
+}
+
 static char *vboxDomainGetOSType(virDomainPtr dom ATTRIBUTE_UNUSED) {
     /* Returning "hvm" always as suggested on list, cause
      * this functions seems to be badly named and it
@@ -8774,6 +8785,7 @@ virDriver NAME(Driver) = {
     .domainShutdown = vboxDomainShutdown, /* 0.6.3 */
     .domainReboot = vboxDomainReboot, /* 0.6.3 */
     .domainDestroy = vboxDomainDestroy, /* 0.6.3 */
+    .domainDestroyFlags = vboxDomainDestroyFlags, /* 0.9.4 */
     .domainGetOSType = vboxDomainGetOSType, /* 0.6.3 */
     .domainSetMemory = vboxDomainSetMemory, /* 0.6.3 */
     .domainGetInfo = vboxDomainGetInfo, /* 0.6.3 */