This patch series is continuation of my work to add encryption key managment to luks/qcow2 with luks.
This is second version of this patch set. The changes are mostly addressing the review feedback, plus I tested (and fixed sadly) the somewhat ugly code that allows to still write share a raw luks device, while preveting the key managment from happening in this case, as it is unsafe. I added a new iotest dedicated to that as well. Best regards, Maxim Levitsky Maxim Levitsky (11): qcrypto: add suport for amend options qcrypto-luks: extend the create options for upcoming encryption key management qcrypto-luks: implement the encryption key management block: amend: add 'force' option block/crypto: implement the encryption key management qcow2: implement crypto amend options block: add x-blockdev-amend qmp command block/crypto: implement blockdev-amend block/qcow2: implement blockdev-amend iotests: filter few more luks specific create options iotests : add tests for encryption key management block.c | 4 +- block/Makefile.objs | 2 +- block/amend.c | 116 ++++++++++ block/crypto.c | 167 +++++++++++++- block/crypto.h | 16 ++ block/qcow2.c | 151 ++++++++++-- crypto/block-luks.c | 382 ++++++++++++++++++++++++++++++- crypto/block.c | 31 +++ crypto/blockpriv.h | 8 + include/block/block.h | 1 + include/block/block_int.h | 22 +- include/crypto/block.h | 22 ++ qapi/block-core.json | 39 +++- qapi/crypto.json | 19 ++ qapi/job.json | 4 +- qemu-img-cmds.hx | 4 +- qemu-img.c | 8 +- qemu-img.texi | 6 +- tests/qemu-iotests/082.out | 54 +++++ tests/qemu-iotests/087.out | 6 +- tests/qemu-iotests/134.out | 2 +- tests/qemu-iotests/158.out | 4 +- tests/qemu-iotests/188.out | 2 +- tests/qemu-iotests/189.out | 4 +- tests/qemu-iotests/198.out | 4 +- tests/qemu-iotests/300 | 202 ++++++++++++++++ tests/qemu-iotests/300.out | 98 ++++++++ tests/qemu-iotests/301 | 90 ++++++++ tests/qemu-iotests/301.out | 30 +++ tests/qemu-iotests/302 | 252 ++++++++++++++++++++ tests/qemu-iotests/302.out | 18 ++ tests/qemu-iotests/303 | 228 ++++++++++++++++++ tests/qemu-iotests/303.out | 28 +++ tests/qemu-iotests/common.filter | 6 +- tests/qemu-iotests/group | 9 + 35 files changed, 1986 insertions(+), 53 deletions(-) create mode 100644 block/amend.c create mode 100755 tests/qemu-iotests/300 create mode 100644 tests/qemu-iotests/300.out create mode 100755 tests/qemu-iotests/301 create mode 100644 tests/qemu-iotests/301.out create mode 100644 tests/qemu-iotests/302 create mode 100644 tests/qemu-iotests/302.out create mode 100644 tests/qemu-iotests/303 create mode 100644 tests/qemu-iotests/303.out -- 2.17.2