From: Peter Krempa Date: Tue, 16 Sep 2014 10:55:32 +0000 (+0200) Subject: util: storage: Copy driver type when initializing chain element X-Git-Tag: CVE-2014-3633~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=865421c94a63f43c0164d598a73226d0e4231c93;p=thirdparty%2Flibvirt.git util: storage: Copy driver type when initializing chain element virStorageSourceInitChainElement initializes a new storage chain element for use as a new disk source. If the new element doesn't contain the driver name, copy it from the old source. This fixes issue where a disk would forget the driver after a snapshot. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1140984 --- diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c index 13056a7567..960aa2330e 100644 --- a/src/util/virstoragefile.c +++ b/src/util/virstoragefile.c @@ -1927,6 +1927,10 @@ virStorageSourceInitChainElement(virStorageSourcePtr newelem, 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;