Pull crypto updates from Herbert Xu: "Here is the crypto update for 5.3: API: - Test shash interface directly in testmgr - cra_driver_name is now mandatory Algorithms: - Replace arc4 crypto_cipher with library helper - Implement 5 way interleave for ECB, CBC and CTR on arm64 - Add xxhash - Add continuous self-test on noise source to drbg - Update jitter RNG Drivers: - Add support for SHA204A random number generator - Add support for 7211 in iproc-rng200 - Fix fuzz test failures in inside-secure - Fix fuzz test failures in talitos - Fix fuzz test failures in qat" * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (143 commits) crypto: stm32/hash - remove interruptible condition for dma crypto: stm32/hash - Fix hmac issue more than 256 bytes crypto: stm32/crc32 - rename driver file crypto: amcc - remove memset after dma_alloc_coherent crypto: ccp - Switch to SPDX license identifiers crypto: ccp - Validate the the error value used to index error messages crypto: doc - Fix formatting of new crypto engine content crypto: doc - Add parameter documentation crypto: arm64/aes-ce - implement 5 way interleave for ECB, CBC and CTR crypto: arm64/aes-ce - add 5 way interleave routines crypto: talitos - drop icv_ool crypto: talitos - fix hash on SEC1. crypto: talitos - move struct talitos_edesc into talitos.h lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE crypto/NX: Set receive window credits to max number of CRBs in RxFIFO crypto: asymmetric_keys - select CRYPTO_HASH where needed crypto: serpent - mark __serpent_setkey_sbox noinline crypto: testmgr - dynamically allocate crypto_shash crypto: testmgr - dynamically allocate testvec_config crypto: talitos - eliminate unneeded 'done' functions at build time ...
Showing the changes to include/linux (1 of 168 files). Show all
Unified · Split
| @@ -49,7 +49,6 @@ · 48 unmodified lines | ||
| 49 | 49 | #define CRYPTO_ALG_TYPE_SCOMPRESS 0x0000000b |
| 50 | 50 | #define CRYPTO_ALG_TYPE_RNG 0x0000000c |
| 51 | 51 | #define CRYPTO_ALG_TYPE_AKCIPHER 0x0000000d |
| 52 | −#define CRYPTO_ALG_TYPE_DIGEST 0x0000000e | |
| 53 | 52 | #define CRYPTO_ALG_TYPE_HASH 0x0000000e |
| 54 | 53 | #define CRYPTO_ALG_TYPE_SHASH 0x0000000e |
| 55 | 54 | #define CRYPTO_ALG_TYPE_AHASH 0x0000000f |
| @@ -323,6 +322,17 @@ struct cipher_alg { · 267 unmodified lines | ||
| 323 | 322 | void (*cia_decrypt)(struct crypto_tfm *tfm, u8 *dst, const u8 *src); |
| 324 | 323 | }; |
| 325 | 324 | |
| 325 | +/** | |
| 326 | + * struct compress_alg - compression/decompression algorithm | |
| 327 | + * @coa_compress: Compress a buffer of specified length, storing the resulting | |
| 328 | + * data in the specified buffer. Return the length of the | |
| 329 | + * compressed data in dlen. | |
| 330 | + * @coa_decompress: Decompress the source buffer, storing the uncompressed | |
| 331 | + * data in the specified buffer. The length of the data is | |
| 332 | + * returned in dlen. | |
| 333 | + * | |
| 334 | + * All fields are mandatory. | |
| 335 | + */ | |
| 326 | 336 | struct compress_alg { |
| 327 | 337 | int (*coa_compress)(struct crypto_tfm *tfm, const u8 *src, |
| 328 | 338 | unsigned int slen, u8 *dst, unsigned int *dlen); |