With CONFIG_KEY_DH_OPERATIONS=y and CONFIG_CRYPTO=m we get the following link error:
security/built-in.o: In function `__keyctl_dh_compute': device_cgroup.c:(.text+0x925c): undefined reference to 'crypto_alloc_shash' device_cgroup.c:(.text+0x9510): undefined reference to 'crypto_shash_update' device_cgroup.c:(.text+0x9548): undefined reference to 'crypto_shash_update' device_cgroup.c:(.text+0x957c): undefined reference to 'crypto_shash_final' device_cgroup.c:(.text+0x95d0): undefined reference to 'crypto_shash_final' device_cgroup.c:(.text+0x9710): undefined reference to 'crypto_destroy_tfm' Fix this by selecting the crypto core in order to reach the functions above. Fixes: f1c316a3ab9d ("KEYS: add SP800-56A KDF support for DH") Signed-off-by: Tobias Regnery <tobias.regn...@gmail.com> --- security/keys/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/security/keys/Kconfig b/security/keys/Kconfig index 4ac1b83a23f8..6fd95f76bfae 100644 --- a/security/keys/Kconfig +++ b/security/keys/Kconfig @@ -90,6 +90,7 @@ config KEY_DH_OPERATIONS bool "Diffie-Hellman operations on retained keys" depends on KEYS select MPILIB + select CRYPTO select CRYPTO_HASH help This option provides support for calculating Diffie-Hellman -- 2.11.0