mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
Since the crypto_rng interface for hardware PRNGs is unused and is
redundant with hwrng and the actual Linux RNG, it's being phased out.
Most drivers for it were already removed. Go ahead and remove the
sun8i-ss support which is one of the only remaining ones.
As usual for crypto_rng, this driver was also buggy: its ->generate()
function had a use-after-free vulnerability due to using
wait_for_completion_interruptible_timeout() without handling shutting
down the DMA operation if a signal is sent. Also, it had a buffer
overread bug in the line 'memcpy(ctx->seed, d + dlen, ctx->slen);'.
There's no point in fixing these bugs separately only to remove the code
anyway, so this commit is marked with Fixes and Cc stable.
Fixes: ac2614d721 ("crypto: sun8i-ss - Add support for the PRNG")
Cc: stable@vger.kernel.org
Cc: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
116 lines
3.4 KiB
Plaintext
116 lines
3.4 KiB
Plaintext
config CRYPTO_DEV_ALLWINNER
|
|
bool "Support for Allwinner cryptographic offloader"
|
|
depends on ARCH_SUNXI || COMPILE_TEST
|
|
default y if ARCH_SUNXI
|
|
help
|
|
Say Y here to get to see options for Allwinner hardware crypto devices
|
|
|
|
config CRYPTO_DEV_SUN4I_SS
|
|
tristate "Support for Allwinner Security System cryptographic accelerator"
|
|
depends on ARCH_SUNXI
|
|
depends on PM
|
|
depends on CRYPTO_DEV_ALLWINNER
|
|
select CRYPTO_MD5
|
|
select CRYPTO_SHA1
|
|
select CRYPTO_AES
|
|
select CRYPTO_LIB_DES
|
|
select CRYPTO_SKCIPHER
|
|
help
|
|
Some Allwinner SoC have a crypto accelerator named
|
|
Security System. Select this if you want to use it.
|
|
The Security System handle AES/DES/3DES ciphers in CBC mode
|
|
and SHA1 and MD5 hash algorithms.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called sun4i-ss.
|
|
|
|
config CRYPTO_DEV_SUN4I_SS_DEBUG
|
|
bool "Enable sun4i-ss stats"
|
|
depends on CRYPTO_DEV_SUN4I_SS
|
|
depends on DEBUG_FS
|
|
help
|
|
Say y to enable sun4i-ss debug stats.
|
|
This will create /sys/kernel/debug/sun4i-ss/stats for displaying
|
|
the number of requests per algorithm.
|
|
|
|
config CRYPTO_DEV_SUN8I_CE
|
|
tristate "Support for Allwinner Crypto Engine cryptographic offloader"
|
|
select CRYPTO_SKCIPHER
|
|
select CRYPTO_ENGINE
|
|
select CRYPTO_ECB
|
|
select CRYPTO_CBC
|
|
select CRYPTO_AES
|
|
select CRYPTO_DES
|
|
depends on CRYPTO_DEV_ALLWINNER
|
|
depends on PM
|
|
help
|
|
Select y here to have support for the crypto Engine available on
|
|
Allwinner SoC H2+, H3, H5, H6, R40 and A64.
|
|
The Crypto Engine handle AES/3DES ciphers in ECB/CBC mode.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called sun8i-ce.
|
|
|
|
config CRYPTO_DEV_SUN8I_CE_DEBUG
|
|
bool "Enable sun8i-ce stats"
|
|
depends on CRYPTO_DEV_SUN8I_CE
|
|
depends on DEBUG_FS
|
|
help
|
|
Say y to enable sun8i-ce debug stats.
|
|
This will create /sys/kernel/debug/sun8i-ce/stats for displaying
|
|
the number of requests per flow and per algorithm.
|
|
|
|
config CRYPTO_DEV_SUN8I_CE_HASH
|
|
bool "Enable support for hash on sun8i-ce"
|
|
depends on CRYPTO_DEV_SUN8I_CE
|
|
select CRYPTO_MD5
|
|
select CRYPTO_SHA1
|
|
select CRYPTO_SHA256
|
|
select CRYPTO_SHA512
|
|
help
|
|
Say y to enable support for hash algorithms.
|
|
|
|
config CRYPTO_DEV_SUN8I_CE_TRNG
|
|
bool "Support for Allwinner Crypto Engine TRNG"
|
|
depends on CRYPTO_DEV_SUN8I_CE
|
|
select HW_RANDOM
|
|
help
|
|
Select this option if you want to provide kernel-side support for
|
|
the True Random Number Generator found in the Crypto Engine.
|
|
|
|
config CRYPTO_DEV_SUN8I_SS
|
|
tristate "Support for Allwinner Security System cryptographic offloader"
|
|
select CRYPTO_SKCIPHER
|
|
select CRYPTO_ENGINE
|
|
select CRYPTO_ECB
|
|
select CRYPTO_CBC
|
|
select CRYPTO_AES
|
|
select CRYPTO_DES
|
|
depends on CRYPTO_DEV_ALLWINNER
|
|
depends on PM
|
|
help
|
|
Select y here to have support for the Security System available on
|
|
Allwinner SoC A80, A83T.
|
|
The Security System handle AES/3DES ciphers in ECB/CBC mode.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called sun8i-ss.
|
|
|
|
config CRYPTO_DEV_SUN8I_SS_DEBUG
|
|
bool "Enable sun8i-ss stats"
|
|
depends on CRYPTO_DEV_SUN8I_SS
|
|
depends on DEBUG_FS
|
|
help
|
|
Say y to enable sun8i-ss debug stats.
|
|
This will create /sys/kernel/debug/sun8i-ss/stats for displaying
|
|
the number of requests per flow and per algorithm.
|
|
|
|
config CRYPTO_DEV_SUN8I_SS_HASH
|
|
bool "Enable support for hash on sun8i-ss"
|
|
depends on CRYPTO_DEV_SUN8I_SS
|
|
select CRYPTO_MD5
|
|
select CRYPTO_SHA1
|
|
select CRYPTO_SHA256
|
|
help
|
|
Say y to enable support for hash algorithms.
|