kernel/modules: fix crypto API RNG for >=4.2

Since kernel 4.2, DRBG is the default crypto API RNG, replacing krng. As
DRBG is not enabled, there is no crypto API RNG available when running
kernel 4.2 or later. Because of this, IPsec SAs fail to install. In
strongSwan, this results in a vague error that is difficult to debug:

received netlink error: No such file or directory (2)

Solve this by adding DRBG to the kmod-crypto-rng package. As enabling
DRBG in the kernel config also enables the Jitterentropy RNG, include it
in kmod-crypto-rng instead of having it in a separate package.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>

SVN-Revision: 47827
lede-17.01
Felix Fietkau 2015-12-10 12:40:55 +00:00
parent 8af89bbcb6
commit b106a8f255
1 changed files with 10 additions and 15 deletions

View File

@ -100,26 +100,21 @@ $(eval $(call KernelPackage,crypto-wq))
define KernelPackage/crypto-rng define KernelPackage/crypto-rng
TITLE:=CryptoAPI random number generation TITLE:=CryptoAPI random number generation
KCONFIG:=CONFIG_CRYPTO_RNG2 KCONFIG:= \
FILES:=$(LINUX_DIR)/crypto/rng.ko CONFIG_CRYPTO_DRBG \
ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,4.2.0)),1) CONFIG_CRYPTO_JITTERENTROPY \
FILES+=$(LINUX_DIR)/crypto/krng.ko CONFIG_CRYPTO_RNG2
endif FILES:= \
AUTOLOAD:=$(call AutoLoad,09,rng krng) $(LINUX_DIR)/crypto/drbg.ko@ge4.2 \
$(LINUX_DIR)/crypto/jitterentropy_rng.ko@ge4.2 \
$(LINUX_DIR)/crypto/krng.ko@lt4.2 \
$(LINUX_DIR)/crypto/rng.ko
AUTOLOAD:=$(call AutoLoad,09,drbg@ge4.2 jitterentropy_rng@ge4.2 krng@lt4.2 rng)
$(call AddDepends/crypto) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-rng)) $(eval $(call KernelPackage,crypto-rng))
define KernelPackage/crypto-rng-jitterentropy
TITLE:=Jitterentropy Non-Deterministic Random Number Generator
KCONFIG:=CONFIG_CRYPTO_JITTERENTROPY
FILES:= $(LINUX_DIR)/crypto/jitterentropy_rng.ko
AUTOLOAD:=$(call AutoLoad,10,jitterentropy-rng)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-rng-jitterentropy))
define KernelPackage/crypto-iv define KernelPackage/crypto-iv
TITLE:=CryptoAPI initialization vectors TITLE:=CryptoAPI initialization vectors