crypto: asymmetric_keys - select CRYPTO_HASH where needed

Build testing with some core crypto options disabled revealed
a few modules that are missing CRYPTO_HASH:

crypto/asymmetric_keys/x509_public_key.o: In function `x509_get_sig_params':
x509_public_key.c:(.text+0x4c7): undefined reference to `crypto_alloc_shash'
x509_public_key.c:(.text+0x5e5): undefined reference to `crypto_shash_digest'
crypto/asymmetric_keys/pkcs7_verify.o: In function `pkcs7_digest.isra.0':
pkcs7_verify.c:(.text+0xab): undefined reference to `crypto_alloc_shash'
pkcs7_verify.c:(.text+0x1b2): undefined reference to `crypto_shash_digest'
pkcs7_verify.c:(.text+0x3c1): undefined reference to `crypto_shash_update'
pkcs7_verify.c:(.text+0x411): undefined reference to `crypto_shash_finup'

This normally doesn't show up in randconfig tests because there is
a large number of other options that select CRYPTO_HASH.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Arnd Bergmann 2019-06-18 14:13:47 +02:00 committed by Herbert Xu
parent 473971187d
commit 90acc0653d

View File

@ -15,6 +15,7 @@ config ASYMMETRIC_PUBLIC_KEY_SUBTYPE
select MPILIB select MPILIB
select CRYPTO_HASH_INFO select CRYPTO_HASH_INFO
select CRYPTO_AKCIPHER select CRYPTO_AKCIPHER
select CRYPTO_HASH
help help
This option provides support for asymmetric public key type handling. This option provides support for asymmetric public key type handling.
If signature generation and/or verification are to be used, If signature generation and/or verification are to be used,
@ -65,6 +66,7 @@ config TPM_KEY_PARSER
config PKCS7_MESSAGE_PARSER config PKCS7_MESSAGE_PARSER
tristate "PKCS#7 message parser" tristate "PKCS#7 message parser"
depends on X509_CERTIFICATE_PARSER depends on X509_CERTIFICATE_PARSER
select CRYPTO_HASH
select ASN1 select ASN1
select OID_REGISTRY select OID_REGISTRY
help help
@ -87,6 +89,7 @@ config SIGNED_PE_FILE_VERIFICATION
bool "Support for PE file signature verification" bool "Support for PE file signature verification"
depends on PKCS7_MESSAGE_PARSER=y depends on PKCS7_MESSAGE_PARSER=y
depends on SYSTEM_DATA_VERIFICATION depends on SYSTEM_DATA_VERIFICATION
select CRYPTO_HASH
select ASN1 select ASN1
select OID_REGISTRY select OID_REGISTRY
help help