From 426a546ab9206e3defea0e80fab14148ddc7fd4c Mon Sep 17 00:00:00 2001
From: jow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Tue, 3 May 2011 21:19:56 +0000
Subject: [PATCH 1/2] kernel: add kmod-crypto-{wq,rng,iv} This patch adds
 kmod-crypto-wq, kmod-crypto-rng, and kmod-crypto-iv packages. These packages
 provide some missing kernel crypto modules which are required for IPSEC. The
 strongswan4, ipsec-tools, and possibly other IPSEC packages do not work
 properly without these modules.

NOTE: The KCONFIG associated with each of these modules gets selected
whenever CRYPTO_MANAGER (kmod-crypto-manager) is selected so these
modules are already being built.

Signed-off-by: Lars Hjersted <lars@hjersted.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26812 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 package/kernel/modules/crypto.mk | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

(limited to 'package/kernel')

diff --git a/package/kernel/modules/crypto.mk b/package/kernel/modules/crypto.mk
index b895224b2..5aa954900 100644
--- a/package/kernel/modules/crypto.mk
+++ b/package/kernel/modules/crypto.mk
@@ -76,6 +76,38 @@ define KernelPackage/crypto-manager
 endef
 $(eval $(call KernelPackage,crypto-manager))
 
+define KernelPackage/crypto-wq
+  TITLE:=CryptoAPI work queue handling
+  KCONFIG:=CONFIG_CRYPTO_WORKQUEUE
+  FILES:=$(LINUX_DIR)/crypto/crypto_wq.ko
+  AUTOLOAD:=$(call AutoLoad,09,crypto_wq)
+  $(call AddDepends/crypto)
+endef
+$(eval $(call KernelPackage,crypto-wq))
+
+define KernelPackage/crypto-rng
+  TITLE:=CryptoAPI random number generation
+  KCONFIG:=CONFIG_CRYPTO_RNG2
+  FILES:= \
+	$(LINUX_DIR)/crypto/rng.ko \
+	$(LINUX_DIR)/crypto/krng.ko
+  AUTOLOAD:=$(call AutoLoad,09,rng krng)
+  $(call AddDepends/crypto)
+endef
+$(eval $(call KernelPackage,crypto-rng))
+
+define KernelPackage/crypto-iv
+  TITLE:=CryptoAPI initialization vectors
+  DEPENDS:=+kmod-crypto-rng +kmod-crypto-wq
+  KCONFIG:= CONFIG_CRYPTO_BLKCIPHER2
+  FILES:= \
+	$(LINUX_DIR)/crypto/eseqiv.ko \
+	$(LINUX_DIR)/crypto/chainiv.ko
+  AUTOLOAD:=$(call AutoLoad,10,eseqiv chainiv)
+  $(call AddDepends/crypto)
+endef
+$(eval $(call KernelPackage,crypto-iv))
+
 define KernelPackage/crypto-hw-padlock
   TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
   DEPENDS:=+kmod-crypto-aes
-- 
cgit v1.2.3