[PATCH] [v2] crypto: lib/Kconfig: hide library options

Jarkko Sakkinen jarkko at kernel.org
Mon Mar 17 12:38:10 UTC 2025


On Fri, Mar 14, 2025 at 05:05:32PM +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd at arndb.de>
> 
> Any driver that needs these library functions should already be selecting
> the corresponding Kconfig symbols, so there is no real point in making
> these visible.
> 
> The original patch that made these user selectable described problems
> with drivers failing to select the code they use, but for consistency
> it's better to always use 'select' on a symbol than to mix it with
> 'depends on'.
> 
> Fixes: e56e18985596 ("lib/crypto: add prompts back to crypto libraries")
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> ---
> v2: add the missing 'select' statements
> ---
>  drivers/crypto/marvell/Kconfig | 4 ++--
>  lib/crypto/Kconfig             | 8 ++++----
>  security/keys/Kconfig          | 2 +-
>  3 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/crypto/marvell/Kconfig b/drivers/crypto/marvell/Kconfig
> index 4c25a78ab3ed..aa269abb0499 100644
> --- a/drivers/crypto/marvell/Kconfig
> +++ b/drivers/crypto/marvell/Kconfig
> @@ -24,7 +24,7 @@ config CRYPTO_DEV_OCTEONTX_CPT
>  	tristate "Support for Marvell OcteonTX CPT driver"
>  	depends on ARCH_THUNDER || COMPILE_TEST
>  	depends on PCI_MSI && 64BIT
> -	depends on CRYPTO_LIB_AES
> +	select CRYPTO_LIB_AES
>  	select CRYPTO_SKCIPHER
>  	select CRYPTO_HASH
>  	select CRYPTO_AEAD
> @@ -41,10 +41,10 @@ config CRYPTO_DEV_OCTEONTX2_CPT
>  	tristate "Marvell OcteonTX2 CPT driver"
>  	depends on ARCH_THUNDER2 || COMPILE_TEST
>  	depends on PCI_MSI && 64BIT
> -	depends on CRYPTO_LIB_AES
>  	depends on NET_VENDOR_MARVELL
>  	select OCTEONTX2_MBOX
>  	select CRYPTO_DEV_MARVELL
> +	select CRYPTO_LIB_AES
>  	select CRYPTO_SKCIPHER
>  	select CRYPTO_HASH
>  	select CRYPTO_AEAD
> diff --git a/lib/crypto/Kconfig b/lib/crypto/Kconfig
> index 17322f871586..798972b29b68 100644
> --- a/lib/crypto/Kconfig
> +++ b/lib/crypto/Kconfig
> @@ -63,7 +63,7 @@ config CRYPTO_LIB_CHACHA_INTERNAL
>  	select CRYPTO_LIB_CHACHA_GENERIC if CRYPTO_ARCH_HAVE_LIB_CHACHA=n
>  
>  config CRYPTO_LIB_CHACHA
> -	tristate "ChaCha library interface"
> +	tristate
>  	select CRYPTO
>  	select CRYPTO_LIB_CHACHA_INTERNAL
>  	help
> @@ -93,7 +93,7 @@ config CRYPTO_LIB_CURVE25519_INTERNAL
>  	select CRYPTO_LIB_CURVE25519_GENERIC if CRYPTO_ARCH_HAVE_LIB_CURVE25519=n
>  
>  config CRYPTO_LIB_CURVE25519
> -	tristate "Curve25519 scalar multiplication library"
> +	tristate
>  	select CRYPTO
>  	select CRYPTO_LIB_CURVE25519_INTERNAL
>  	help
> @@ -132,7 +132,7 @@ config CRYPTO_LIB_POLY1305_INTERNAL
>  	select CRYPTO_LIB_POLY1305_GENERIC if CRYPTO_ARCH_HAVE_LIB_POLY1305=n
>  
>  config CRYPTO_LIB_POLY1305
> -	tristate "Poly1305 library interface"
> +	tristate
>  	select CRYPTO
>  	select CRYPTO_LIB_POLY1305_INTERNAL
>  	help
> @@ -141,7 +141,7 @@ config CRYPTO_LIB_POLY1305
>  	  is available and enabled.
>  
>  config CRYPTO_LIB_CHACHA20POLY1305
> -	tristate "ChaCha20-Poly1305 AEAD support (8-byte nonce library version)"
> +	tristate
>  	select CRYPTO_LIB_CHACHA
>  	select CRYPTO_LIB_POLY1305
>  	select CRYPTO_LIB_UTILS
> diff --git a/security/keys/Kconfig b/security/keys/Kconfig
> index abb03a1b2a5c..d4f5fc1e7263 100644
> --- a/security/keys/Kconfig
> +++ b/security/keys/Kconfig
> @@ -60,7 +60,7 @@ config BIG_KEYS
>  	bool "Large payload keys"
>  	depends on KEYS
>  	depends on TMPFS
> -	depends on CRYPTO_LIB_CHACHA20POLY1305 = y
> +	select CRYPTO_LIB_CHACHA20POLY1305
>  	help
>  	  This option provides support for holding large keys within the kernel
>  	  (for example Kerberos ticket caches).  The data may be stored out to
> -- 
> 2.39.5
> 
> 

Acked-by: Jarkko Sakkinen <jarkko at kernel.org>

BR, Jarkko



More information about the Linux-security-module-archive mailing list