]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: snapshot: Add functions similar to disk source pool translation
authorPeter Krempa <pkrempa@redhat.com>
Mon, 25 Nov 2013 16:26:02 +0000 (17:26 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 2 Dec 2013 13:43:13 +0000 (14:43 +0100)
To avoid future pain, add placeholder functions to get the actual
snapshot disk type.

src/qemu/qemu_conf.c
src/qemu/qemu_conf.h

index 77df370087f6c823a51501ff0b0c4fc68a5e6017..557ccc5f2fdb0d3ae3e69b72ca39f7cadc4e9d45 100644 (file)
@@ -1402,3 +1402,26 @@ cleanup:
     virStoragePoolDefFree(pooldef);
     return ret;
 }
+
+
+int
+qemuSnapshotDiskGetActualType(virDomainSnapshotDiskDefPtr def)
+{
+    if (def->type == -1)
+        return VIR_DOMAIN_DISK_TYPE_FILE;
+
+    return def->type;
+}
+
+
+int
+qemuTranslateSnapshotDiskSourcePool(virConnectPtr conn ATTRIBUTE_UNUSED,
+                                    virDomainSnapshotDiskDefPtr def)
+{
+    if (def->type != VIR_DOMAIN_DISK_TYPE_VOLUME)
+        return 0;
+
+    virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+                   _("Snapshots are not yet supported with 'pool' volumes"));
+    return -1;
+}
index f9ff7afa09bf902eabf1249150aac0ea327ddf8d..d1ae415a132ac240f4ad65b1ec2f9662bb6beda0 100644 (file)
@@ -29,6 +29,7 @@
 # include "capabilities.h"
 # include "network_conf.h"
 # include "domain_conf.h"
+# include "snapshot_conf.h"
 # include "domain_event.h"
 # include "virthread.h"
 # include "security/security_manager.h"
@@ -307,4 +308,9 @@ virDomainXMLOptionPtr virQEMUDriverCreateXMLConf(virQEMUDriverPtr driver);
 int qemuTranslateDiskSourcePool(virConnectPtr conn,
                                 virDomainDiskDefPtr def);
 
+int qemuSnapshotDiskGetActualType(virDomainSnapshotDiskDefPtr def);
+
+int qemuTranslateSnapshotDiskSourcePool(virConnectPtr conn,
+                                        virDomainSnapshotDiskDefPtr def);
+
 #endif /* __QEMUD_CONF_H */