linux/lib/crypto
Eric Biggers 98066f2f89 crypto: lib/chacha - strongly type the ChaCha state
The ChaCha state matrix is 16 32-bit words.  Currently it is represented
in the code as a raw u32 array, or even just a pointer to u32.  This
weak typing is error-prone.  Instead, introduce struct chacha_state:

    struct chacha_state {
            u32 x[16];
    };

Convert all ChaCha and HChaCha functions to use struct chacha_state.
No functional changes.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Acked-by: Kent Overstreet <kent.overstreet@linux.dev>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2025-05-12 13:32:53 +08:00
..
mpi crypto: lib/mpi - Export mpi_set_bit 2024-11-15 19:52:51 +08:00
Kconfig crypto: lib/sha256 - Add helpers for block-based shash 2025-05-05 18:20:45 +08:00
Makefile crypto: lib/poly1305 - Build main library on LIB_POLY1305 and split generic code out 2025-05-06 19:05:24 +08:00
aes.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
aescfb.c crypto: lib - implement library version of AES in CFB mode 2024-05-09 22:30:51 +03:00
aesgcm.c crypto: lib/aesgcm - Reduce stack usage in libaesgcm_init 2024-12-28 19:49:22 +08:00
arc4.c crypto: lib - add missing MODULE_DESCRIPTION() macros 2024-06-07 19:46:39 +08:00
blake2s-generic.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
blake2s-selftest.c crypto: lib/blake2s - Split up test function to halve stack usage 2022-12-30 22:56:27 +08:00
blake2s.c crypto: remove MODULE_LICENSE in non-modules 2023-04-13 13:13:51 -07:00
chacha.c crypto: lib/chacha - strongly type the ChaCha state 2025-05-12 13:32:53 +08:00
chacha20poly1305-selftest.c crypto: lib/chacha - strongly type the ChaCha state 2025-05-12 13:32:53 +08:00
chacha20poly1305.c crypto: lib/chacha - strongly type the ChaCha state 2025-05-12 13:32:53 +08:00
curve25519-fiat32.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
curve25519-generic.c crypto: curve25519 - Fix selftest build error 2020-01-16 15:18:13 +08:00
curve25519-hacl64.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
curve25519-selftest.c crypto: lib/curve25519 - re-add selftests 2019-12-27 18:18:03 +08:00
curve25519.c crypto: lib - rename 'mod_init' & 'mod_exit' functions to be module-specific 2021-07-16 15:49:36 +08:00
des.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
gf128mul.c crypto: lib/gf128mul - Remove some bbe deadcode 2024-12-21 22:46:24 +08:00
libchacha.c crypto: lib/chacha - strongly type the ChaCha state 2025-05-12 13:32:53 +08:00
memneq.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
poly1305-donna32.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
poly1305-donna64.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
poly1305-generic.c crypto: lib/poly1305 - Build main library on LIB_POLY1305 and split generic code out 2025-05-06 19:05:24 +08:00
poly1305.c crypto: lib/poly1305 - Build main library on LIB_POLY1305 and split generic code out 2025-05-06 19:05:24 +08:00
sha1.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sha256-generic.c crypto: sha256 - support arch-optimized lib and expose through shash 2025-05-05 13:38:12 +08:00
sha256.c crypto: lib/sha256 - Use generic block helper 2025-05-05 18:20:45 +08:00
simd.c crypto: api - move crypto_simd_disabled_for_test to lib 2024-10-28 18:33:11 +08:00
sm3.c crypto: lib/sm3 - Remove partial block helpers 2025-04-23 15:52:47 +08:00
utils.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00