VIR_FREE(def->dst);
virStorageSourceFree(def->mirror);
VIR_FREE(def->wwn);
+ VIR_FREE(def->driverName);
VIR_FREE(def->vendor);
VIR_FREE(def->product);
VIR_FREE(def->domain_name);
const char *
virDomainDiskGetDriver(const virDomainDiskDef *def)
{
- return def->src->driverName;
+ return def->driverName;
}
virDomainDiskSetDriver(virDomainDiskDefPtr def, const char *name)
{
int ret;
- char *tmp = def->src->driverName;
+ char *tmp = def->driverName;
- ret = VIR_STRDUP(def->src->driverName, name);
+ ret = VIR_STRDUP(def->driverName, name);
if (ret < 0)
- def->src->driverName = tmp;
+ def->driverName = tmp;
else
VIR_FREE(tmp);
return ret;
char *tmp = NULL;
int ret = -1;
- def->src->driverName = virXMLPropString(cur, "name");
+ def->driverName = virXMLPropString(cur, "name");
if ((tmp = virXMLPropString(cur, "cache")) &&
(def->cachemode = virDomainDiskCacheTypeFromString(tmp)) < 0) {
virDomainBlockIoTuneInfo blkdeviotune;
+ char *driverName;
+
char *serial;
char *wwn;
char *vendor;
if (VIR_STRDUP(ret->path, src->path) < 0 ||
VIR_STRDUP(ret->volume, src->volume) < 0 ||
- VIR_STRDUP(ret->driverName, src->driverName) < 0 ||
VIR_STRDUP(ret->relPath, src->relPath) < 0 ||
VIR_STRDUP(ret->backingStoreRaw, src->backingStoreRaw) < 0 ||
VIR_STRDUP(ret->snapshot, src->snapshot) < 0 ||
virStorageSourceSeclabelsCopy(newelem, old) < 0)
goto cleanup;
- if (!newelem->driverName &&
- VIR_STRDUP(newelem->driverName, old->driverName) < 0)
- goto cleanup;
-
newelem->shared = old->shared;
newelem->readonly = old->readonly;
VIR_FREE(def->snapshot);
VIR_FREE(def->configFile);
virStorageSourcePoolDefFree(def->srcpool);
- VIR_FREE(def->driverName);
virBitmapFree(def->features);
VIR_FREE(def->compat);
virStorageEncryptionFree(def->encryption);
virObjectPtr privateData;
- char *driverName;
int format; /* virStorageFileFormat in domain backing chains, but
* pool-specific enum for storage volumes */
virBitmapPtr features;