]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
include: Create constants for save image format values
authorPeter Krempa <pkrempa@redhat.com>
Thu, 4 Dec 2025 14:22:56 +0000 (15:22 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 10 Dec 2025 10:07:34 +0000 (11:07 +0100)
The 'VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT' typed parameter for
'virDomainSaveParams' is implemented as a string but really encodes an
enumeration of supported types. We can't change the format any more but
can export the corresponding types as constants.

Additionally this also mentions the missing 'sparse' format.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
include/libvirt/libvirt-domain.h
src/qemu/qemu_saveimage.c

index 16fac6b0851c6c502418ef6d65fe5121b0447e4e..893359aaae0af9901cd16e878715d849cb4cc2dd 100644 (file)
@@ -1702,14 +1702,95 @@ int                     virDomainRestoreParams  (virConnectPtr conn,
  * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT:
  *
  * an optional parameter used to specify the format of the save image.
- * Valid formats are raw, zstd, lzop, gzip, bzip2, and xz. If not
- * specified, the save_image_format setting in qemu.conf is used, which
- * defaults to raw. As VIR_TYPED_PARAM_STRING.
+ * Valid format strings are represented by constants:
+ *  - VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_RAW
+ *  - VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_GZIP
+ *  - VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_BZIP2
+ *  - VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_XZ
+ *  - VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_LZOP
+ *  - VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_ZSTD
+ *  - VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_SPARSE
+ *
+ * In the qemu driver, if not specified, the save_image_format setting in
+ * qemu.conf is used, which defaults to VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_RAW.
+ *
+ * As VIR_TYPED_PARAM_STRING.
  *
  * Since: 11.2.0
  */
 # define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT     "image_format"
 
+
+/**
+ * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_RAW:
+ *
+ * raw uncompressed format for the save image
+ *
+ * Since: 12.0.0
+ */
+# define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_RAW "raw"
+
+
+/**
+ * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_GZIP:
+ *
+ * gzip compressed format for the save image
+ *
+ * Since: 12.0.0
+ */
+# define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_GZIP "gzip"
+
+
+/**
+ * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_BZIP2:
+ *
+ * bzip2 compressed format for the save image
+ *
+ * Since: 12.0.0
+ */
+# define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_BZIP2 "bzip2"
+
+
+/**
+ * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_XZ:
+ *
+ * xz compressed format for the save image
+ *
+ * Since: 12.0.0
+ */
+# define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_XZ "xz"
+
+
+/**
+ * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_LZOP:
+ *
+ * lzop compressed format for the save image
+ *
+ * Since: 12.0.0
+ */
+# define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_LZOP "lzop"
+
+
+/**
+ * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_ZSTD:
+ *
+ * zstd compressed format for the save image
+ *
+ * Since: 12.0.0
+ */
+# define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_ZSTD "zstd"
+
+
+/**
+ * VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_SPARSE:
+ *
+ * uncompressed sparse file format for the save image
+ *
+ * Since: 12.0.0
+ */
+# define VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_SPARSE "sparse"
+
+
 /*
  * VIR_DOMAIN_SAVE_PARAM_PARALLEL_CHANNELS:
  *
index 48f8220dee991339c9862651dd63bd181377e143..58a3f96575125d6166989dd4c4ae10583570acdf 100644 (file)
@@ -39,13 +39,13 @@ VIR_LOG_INIT("qemu.qemu_saveimage");
 
 VIR_ENUM_IMPL(qemuSaveFormat,
               QEMU_SAVE_FORMAT_LAST,
-              "raw",
-              "gzip",
-              "bzip2",
-              "xz",
-              "lzop",
-              "zstd",
-              "sparse",
+              VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_RAW,
+              VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_GZIP,
+              VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_BZIP2,
+              VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_XZ,
+              VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_LZOP,
+              VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_ZSTD,
+              VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT_SPARSE,
 );
 
 static void