qemu-patch-raspberry4/crypto
Daniel P. Berrange 0c16c056a4 crypto: switch hash code to use nettle/gcrypt directly
Currently the internal hash code is using the gnutls hash APIs.
GNUTLS in turn is wrapping either nettle or gcrypt. Not only
were the GNUTLS hash APIs not added until GNUTLS 2.9.10, but
they don't expose support for all the algorithms QEMU needs
to use with LUKS.

Address this by directly wrapping nettle/gcrypt in QEMU and
avoiding GNUTLS's extra layer of indirection. This gives us
support for hash functions on a much wider range of platforms
and opens up ability to support more hash functions. It also
avoids a GNUTLS bug which would not correctly handle hashing
of large data blocks if int != size_t.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-07-04 10:47:09 +01:00
..
aes.c crypto: Clean up includes 2016-01-29 15:07:22 +00:00
afsplit.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
block-luks.c crypto: fix handling of iv generator hash defaults 2016-07-04 10:46:59 +01:00
block-luks.h crypto: implement the LUKS block encryption format 2016-03-17 16:50:40 +00:00
block-qcow.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
block-qcow.h crypto: add block encryption framework 2016-03-17 14:41:15 +00:00
block.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
blockpriv.h crypto: add block encryption framework 2016-03-17 14:41:15 +00:00
cipher-builtin.c crypto: wire up XTS mode for cipher APIs 2016-03-17 14:41:15 +00:00
cipher-gcrypt.c crypto: wire up XTS mode for cipher APIs 2016-03-17 14:41:15 +00:00
cipher-nettle.c crypto: fix cipher function signature mismatch with nettle & xts 2016-03-21 10:03:45 +00:00
cipher.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
desrfb.c crypto: Clean up includes 2016-01-29 15:07:22 +00:00
hash-gcrypt.c crypto: switch hash code to use nettle/gcrypt directly 2016-07-04 10:47:09 +01:00
hash-nettle.c crypto: switch hash code to use nettle/gcrypt directly 2016-07-04 10:47:09 +01:00
hash-stub.c crypto: switch hash code to use nettle/gcrypt directly 2016-07-04 10:47:09 +01:00
hash.c crypto: switch hash code to use nettle/gcrypt directly 2016-07-04 10:47:09 +01:00
init.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
ivgen-essiv.c include/crypto: Include qapi-types.h or qemu/bswap.h instead of qemu-common.h 2016-03-22 22:20:16 +01:00
ivgen-essiv.h crypto: add support for generating initialization vectors 2016-03-17 14:41:14 +00:00
ivgen-plain.c include/crypto: Include qapi-types.h or qemu/bswap.h instead of qemu-common.h 2016-03-22 22:20:16 +01:00
ivgen-plain.h crypto: add support for generating initialization vectors 2016-03-17 14:41:14 +00:00
ivgen-plain64.c include/crypto: Include qapi-types.h or qemu/bswap.h instead of qemu-common.h 2016-03-22 22:20:16 +01:00
ivgen-plain64.h crypto: add support for generating initialization vectors 2016-03-17 14:41:14 +00:00
ivgen.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
ivgenpriv.h crypto: add support for generating initialization vectors 2016-03-17 14:41:14 +00:00
Makefile.objs crypto: switch hash code to use nettle/gcrypt directly 2016-07-04 10:47:09 +01:00
pbkdf-gcrypt.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
pbkdf-nettle.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
pbkdf-stub.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
pbkdf.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
random-gcrypt.c crypto: add cryptographic random byte source 2016-03-17 09:49:01 +00:00
random-gnutls.c crypto: add cryptographic random byte source 2016-03-17 09:49:01 +00:00
random-stub.c crypto: add cryptographic random byte source 2016-03-17 09:49:01 +00:00
secret.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
tlscreds.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
tlscredsanon.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
tlscredspriv.h crypto: introduce new base module for TLS credentials 2015-09-15 14:47:37 +01:00
tlscredsx509.c TLS: provide slightly more information when TLS certificate loading fails 2016-06-13 12:41:17 +01:00
tlssession.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
trace-events trace: split out trace events for crypto/ directory 2016-06-20 17:22:14 +01:00
xts.c crypto: import an implementation of the XTS cipher mode 2016-03-17 14:41:15 +00:00