]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
parallels: set virtType depending on driver name
authorMaxim Nestratov <mnestratov@parallels.com>
Tue, 26 May 2015 17:12:00 +0000 (20:12 +0300)
committerDmitry Guryanov <dguryanov@parallels.com>
Wed, 3 Jun 2015 06:47:01 +0000 (09:47 +0300)
We remember driver name in a new field 'drivername' within
private parallels connection structure. When a new domain
is defined we use this name to set corresponding virtType.
We set VIR_DOMAIN_VIRT_VZ for 'vz' driver and
VIR_DOMAIN_VIRT_PARALLELS for 'Parallels'.

Signed-off-by: Maxim Nestratov <mnestratov@parallels.com>
src/parallels/parallels_driver.c
src/parallels/parallels_sdk.c
src/parallels/parallels_utils.h

index 44b4de86b0db174e7ccd41eef6e0deb06de4a45a..e3ac90d3a1a34b0072dc703215c2d247ce21d614 100644 (file)
@@ -241,6 +241,8 @@ parallelsOpenDefault(virConnectPtr conn)
         goto err_free;
     }
 
+    privconn->drivername = conn->driver->name;
+
     if (prlsdkInit()) {
         VIR_DEBUG("%s", _("Can't initialize Parallels SDK"));
         goto err_free;
index 39c200a4746bb8d8c57000a7ccabb66f2bc1e8c0..05f11b0d4296c4564c5fcf5bb192d952f959f534 100644 (file)
@@ -1256,7 +1256,11 @@ prlsdkLoadDomain(parallelsConnPtr privconn,
         pdom = olddom->privateData;
     }
 
-    def->virtType = VIR_DOMAIN_VIRT_PARALLELS;
+    if (STREQ(privconn->drivername, "vz"))
+        def->virtType = VIR_DOMAIN_VIRT_VZ;
+    else
+        def->virtType = VIR_DOMAIN_VIRT_PARALLELS;
+
     def->id = -1;
 
     /* we will remove this field in the near future, so let's set it
index 2d1d40528ae6f907dabda5e3965dbb4b56efaeea..e8a92bb0246996d78e9e8015108b4b292c41a368 100644 (file)
@@ -68,6 +68,7 @@ struct _parallelsConn {
     virDomainXMLOptionPtr xmlopt;
     virObjectEventStatePtr domainEventState;
     virStorageDriverStatePtr storageState;
+    const char *drivername;
 };
 
 typedef struct _parallelsConn parallelsConn;