qemu-e2k/qapi
Daniel P. Berrangé 83bee4b51f crypto: replace 'des-rfb' cipher with 'des'
Currently the crypto layer exposes support for a 'des-rfb'
algorithm which is just normal single-DES, with the bits
in each key byte reversed. This special key munging is
required by the RFB protocol password authentication
mechanism.

Since the crypto layer is generic shared code, it makes
more sense to do the key byte munging in the VNC server
code, and expose normal single-DES support.

Replacing cipher 'des-rfb' by 'des' looks like an incompatible
interface change, but it doesn't matter.  While the QMP schema
allows any QCryptoCipherAlgorithm for the 'cipher-alg' field
in QCryptoBlockCreateOptionsLUKS, the code restricts what can
be used at runtime. Thus the only effect is a change in error
message.

Original behaviour:

 $ qemu-img create -f luks --object secret,id=sec0,data=123 -o cipher-alg=des-rfb,key-secret=sec0 demo.luks 1G
 Formatting 'demo.luks', fmt=luks size=1073741824 key-secret=sec0 cipher-alg=des-rfb
 qemu-img: demo.luks: Algorithm 'des-rfb' not supported

New behaviour:

 $ qemu-img create -f luks --object secret,id=sec0,data=123 -o cipher-alg=des-rfb,key-secret=sec0 demo.luks 1G
 Formatting 'demo.luks', fmt=luks size=1073741824 key-secret=sec0 cipher-alg=des-fish
 qemu-img: demo.luks: Invalid parameter 'des-rfb'

Reviewed-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-07-14 14:15:52 +01:00
..
acpi.json
audio.json
authz.json qapi/qom: Add ObjectOptions for authz-* 2021-03-19 10:17:13 +01:00
block-core.json qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
block-export.json export/fuse: Add allow-other option 2021-07-09 12:26:05 +02:00
block.json
char.json ui/vdagent: add clipboard support 2021-05-21 09:42:44 +02:00
common.json qapi/qom: Add ObjectOptions for input-* 2021-03-19 10:17:14 +01:00
compat.json qapi: New -compat deprecated-input=crash 2021-03-19 16:05:11 +01:00
control.json monitor: remove 'query-events' QMP command 2021-03-18 09:22:55 +00:00
crypto.json crypto: replace 'des-rfb' cipher with 'des' 2021-07-14 14:15:52 +01:00
dump.json
error.json
introspect.json monitor: Drop query-qmp-schema 'gen': false hack 2021-03-19 16:05:09 +01:00
job.json migration: introduce snapshot-{save, load, delete} QMP commands 2021-02-08 11:19:52 +00:00
machine-target.json
machine.json machine: pass QAPI struct to mc->smp_parse 2021-06-25 16:16:11 +02:00
meson.build Revert "hmp: Use QAPI NetdevInfo in hmp_info_network" 2021-04-08 17:33:59 +08:00
migration.json migration/dirtyrate: make sample page count configurable 2021-06-08 20:18:25 +01:00
misc-target.json target/i386/sev: add support to query the attestation report 2021-06-01 09:32:23 -04:00
misc.json
net.json netdev: add more commands to preconfig mode 2021-06-11 10:30:13 +08:00
opts-visitor.c
pci.json
pragma.json block: Remove monitor command block_passwd 2021-03-23 22:31:56 +01:00
qapi-clone-visitor.c
qapi-dealloc-visitor.c
qapi-schema.json qemu-options: New -compat to set policy for deprecated interfaces 2021-03-19 15:43:33 +01:00
qapi-util.c
qapi-visit-core.c qapi: Implement deprecated-input=reject for QMP command arguments 2021-03-19 16:05:11 +01:00
qdev.json
qmp-dispatch.c qapi: New -compat deprecated-input=crash 2021-03-19 16:05:11 +01:00
qmp-event.c
qmp-registry.c qga: return a more explicit error on why a command is disabled 2021-03-16 20:21:47 -05:00
qobject-input-visitor.c qapi: New -compat deprecated-input=crash 2021-03-19 16:05:11 +01:00
qobject-output-visitor.c qapi: Implement deprecated-output=hide for QMP command results 2021-03-19 15:43:33 +01:00
qom.json hostmem: Wire up RAM_NORESERVE via "reserve" property 2021-06-15 20:27:38 +02:00
rdma.json
replay.json
rocker.json
run-state.json
sockets.json sockets: Support multipath TCP 2021-06-08 19:36:22 +01:00
string-input-visitor.c
string-output-visitor.c
tpm.json tpm: Return QMP error when TPM is disabled in build 2021-06-15 10:59:02 -04:00
trace-events docs: fix references to docs/devel/tracing.rst 2021-06-02 06:51:09 +02:00
trace.h
trace.json
transaction.json block: Drop the sheepdog block driver 2021-05-12 17:42:23 +02:00
ui.json ui: Make the DisplayType enum entries conditional 2021-06-23 14:42:30 +02:00
yank.json