freebsd-nq/sys/crypto
John Baldwin 3e9470482a Various cleanups to the software encryption transform interface.
- Consistently use 'void *' for key schedules / key contexts instead
  of a mix of 'caddr_t', 'uint8_t *', and 'void *'.

- Add a ctxsize member to enc_xform similar to what auth transforms use
  and require callers to malloc/zfree the context.  The setkey callback
  now supplies the caller-allocated context pointer and the zerokey
  callback is removed.  Callers now always use zfree() to ensure
  key contexts are zeroed.

- Consistently use C99 initializers for all statically-initialized
  instances of 'struct enc_xform'.

- Change the encrypt and decrypt functions to accept separate in and
  out buffer pointers.  Almost all of the backend crypto functions
  already supported separate input and output buffers and this makes
  it simpler to support separate buffers in OCF.

- Remove xform_userland.h shim to permit transforms to be compiled in
  userland.  Transforms no longer call malloc/free directly.

Reviewed by:	cem (earlier version)
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D24855
2020-05-20 21:21:01 +00:00
..
aesni Retire the CRYPTO_F_IV_GENERATE flag. 2020-04-20 22:24:49 +00:00
armv8 Retire the CRYPTO_F_IV_GENERATE flag. 2020-04-20 22:24:49 +00:00
blake2 Refactor driver and consumer interfaces for OCF (in-kernel crypto). 2020-03-27 18:25:23 +00:00
camellia
ccp ccp: add a new hardware ID, found on AMD Ryzen 3 3200U 2020-04-24 10:20:54 +00:00
chacha20 Various cleanups to the software encryption transform interface. 2020-05-20 21:21:01 +00:00
des Stop using des_cblock * for arguments to DES functions. 2019-08-26 17:25:07 +00:00
libsodium Bring in compatibility glue for libsodium 2018-08-17 00:27:56 +00:00
rc4
rijndael rijndael (AES): Avoid leaking sensitive data on kernel stack 2018-10-26 20:53:01 +00:00
sha2 libmd: Always erase context in _Final method, and when doing 2018-07-20 07:01:28 +00:00
siphash
skein libmd: Always erase context in _Final method, and when doing 2018-07-20 07:01:28 +00:00
via Remove MD5 HMAC from OCF. 2020-05-11 22:08:08 +00:00
intake.h Implement boot-time encryption key passing (keybuf) 2017-04-01 05:05:22 +00:00
sha1.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sha1.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00