summary refs log tree commit diff stats
path: root/qemu-img.c
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2017-06-23 17:24:06 +0100
committerMax Reitz <mreitz@redhat.com>2017-07-11 17:44:55 +0200
commit0cb8d47ba94c0e16f22e3e385dc7c60aea852eee (patch)
tree5e2fbf1e55de0ad6a6959fcf2804277d91dcd8b5 /qemu-img.c
parent06af39ecf9da95bbd6dd38e86b15dbc042a6e09c (diff)
downloadfocaccia-qemu-0cb8d47ba94c0e16f22e3e385dc7c60aea852eee.tar.gz
focaccia-qemu-0cb8d47ba94c0e16f22e3e385dc7c60aea852eee.zip
block: deprecate "encryption=on" in favor of "encrypt.format=aes"
Historically the qcow & qcow2 image formats supported a property
"encryption=on" to enable their built-in AES encryption. We'll
soon be supporting LUKS for qcow2, so need a more general purpose
way to enable encryption, with a choice of formats.

This introduces an "encrypt.format" option, which will later be
joined by a number of other "encrypt.XXX" options. The use of
a "encrypt." prefix instead of "encrypt-" is done to facilitate
mapping to a nested QAPI schema at later date.

e.g. the preferred syntax is now

  qemu-img create -f qcow2 -o encrypt.format=aes demo.qcow2

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Message-id: 20170623162419.26068-8-berrange@redhat.com
Reviewed-by: Alberto Garcia <berto@igalia.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'qemu-img.c')
-rw-r--r--qemu-img.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/qemu-img.c b/qemu-img.c
index f7ffb79db6..ae4fe6d83a 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -2264,6 +2264,8 @@ static int img_convert(int argc, char **argv)
     if (s.compressed) {
         bool encryption =
             qemu_opt_get_bool(opts, BLOCK_OPT_ENCRYPT, false);
+        const char *encryptfmt =
+            qemu_opt_get(opts, BLOCK_OPT_ENCRYPT_FORMAT);
         const char *preallocation =
             qemu_opt_get(opts, BLOCK_OPT_PREALLOC);
 
@@ -2273,7 +2275,7 @@ static int img_convert(int argc, char **argv)
             goto out;
         }
 
-        if (encryption) {
+        if (encryption || encryptfmt) {
             error_report("Compression and encryption not supported at "
                          "the same time");
             ret = -1;