From 5f0272d618f486e694c14c51a3ad42e4232ae9eb Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 23 Sep 2007 15:12:12 +0000 Subject: move crypto support to a seperate crypto.mk file, split modules into multiple packages and adjust dependencies, sync crypto options in kconfigs. SVN-Revision: 8980 --- package/hostap-driver/Makefile | 2 +- package/kernel/modules/crypto.mk | 212 +++++++++++++++++++++++++++++++++++++ package/kernel/modules/network.mk | 4 +- package/kernel/modules/other.mk | 35 ------ package/kernel/modules/wireless.mk | 2 +- package/mac80211/Makefile | 2 +- package/rt2x00/Makefile | 2 +- 7 files changed, 218 insertions(+), 41 deletions(-) create mode 100644 package/kernel/modules/crypto.mk (limited to 'package') diff --git a/package/hostap-driver/Makefile b/package/hostap-driver/Makefile index b784131..2b903f9 100644 --- a/package/hostap-driver/Makefile +++ b/package/hostap-driver/Makefile @@ -42,7 +42,7 @@ endef define KernelPackage/hostap $(call KernelPackage/hostap/Default) - DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-ieee80211 +kmod-crypto + DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-ieee80211 TITLE:=Host AP support for Prism2/2.5/3 KCONFIG:=CONFIG_HOSTAP endef diff --git a/package/kernel/modules/crypto.mk b/package/kernel/modules/crypto.mk new file mode 100644 index 0000000..bd819b0 --- /dev/null +++ b/package/kernel/modules/crypto.mk @@ -0,0 +1,212 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +CRYPTO_MENU:=Cryptographic API modules + +define KernelPackage/crypto-core + SUBMENU:=$(CRYPTO_MENU) + TITLE:=Core CryptoAPI modules + KCONFIG:= \ + CONFIG_CRYPTO=y \ + CONFIG_CRYPTO_ALGAPI \ + CONFIG_CRYPTO_BLKCIPHER \ + CONFIG_CRYPTO_CBC \ + CONFIG_CRYPTO_DEFLATE \ + CONFIG_CRYPTO_ECB \ + CONFIG_CRYPTO_HASH \ + CONFIG_CRYPTO_MANAGER + FILES:= \ + $(LINUX_DIR)/crypto/crypto_algapi.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/blkcipher.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/cbc.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/deflate.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/ecb.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/crypto_hash.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/cryptomgr.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,01, \ + crypto_algapi \ + cryptomgr \ + crypto_hash \ + blkcipher \ + cbc \ + ecb \ + deflate \ + ) +endef + +define KernelPackage/crypto-core/2.4 + FILES:=$(LINUX_DIR)/crypto/deflate.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,01, deflate) +endef + +$(eval $(call KernelPackage,crypto-core)) + + +define KernelPackage/crypto-aes + SUBMENU:=$(CRYPTO_MENU) + TITLE:=AES cipher CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:= \ + CONFIG_CRYPTO_AES \ + CONFIG_CRYPTO_AES_586 + FILES:=$(LINUX_DIR)/crypto/aes.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,aes) +endef + +define KernelPackage/crypto-aes/x86-2.6 + KCONFIG:=CONFIG_CRYPTO_AES_586 + FILES:=$(LINUX_DIR)/arch/i386/crypto/aes-i586.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,aes-i586) +endef + +$(eval $(call KernelPackage,crypto-aes)) + + +define KernelPackage/crypto-arc4 + SUBMENU:=$(CRYPTO_MENU) + TITLE:=ARC4 (RC4) cipher CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_ARC4 + FILES:=$(LINUX_DIR)/crypto/arc4.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,arc4) +endef + +$(eval $(call KernelPackage,crypto-arc4)) + + +define KernelPackage/crypto-des + SUBMENU:=$(CRYPTO_MENU) + TITLE:=DES/3DES cipher CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_AES + FILES:=$(LINUX_DIR)/crypto/aes.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,des) +endef + +$(eval $(call KernelPackage,crypto-des)) + + +define KernelPackage/crypto-hmac + SUBMENU:=$(CRYPTO_MENU) + TITLE:=HMAC digest CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_HMAC + FILES:=$(LINUX_DIR)/crypto/hmac.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,hmac) +endef + +$(eval $(call KernelPackage,crypto-hmac)) + + +define KernelPackage/crypto-md5 + SUBMENU:=$(CRYPTO_MENU) + TITLE:=MD5 digest CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_MD5 + FILES:=$(LINUX_DIR)/crypto/md5.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,md5) +endef + +$(eval $(call KernelPackage,crypto-md5)) + + +define KernelPackage/crypto-michael-mic + SUBMENU:=$(CRYPTO_MENU) + TITLE:=Michael MIC keyed digest CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_MICHAEL_MIC + FILES:=$(LINUX_DIR)/crypto/michael_mic.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,michael_mic) +endef + +$(eval $(call KernelPackage,crypto-michael-mic)) + + +define KernelPackage/crypto-sha1 + SUBMENU:=$(CRYPTO_MENU) + TITLE:=SHA1 digest CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_SHA1 + FILES:=$(LINUX_DIR)/crypto/sha1.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,sha1) +endef + +$(eval $(call KernelPackage,crypto-sha1)) + + +define KernelPackage/crypto-misc + SUBMENU:=$(CRYPTO_MENU) + TITLE:=Other CryptoAPI modules + DEPENDS:=kmod-crypto-core + KCONFIG:= \ + CONFIG_CRYPTO_ANUBIS \ + CONFIG_CRYPTO_BLOWFISH \ + CONFIG_CRYPTO_CAMELLIA \ + CONFIG_CRYPTO_CAST5 \ + CONFIG_CRYPTO_CAST6 \ + CONFIG_CRYPTO_CRC32C \ + CONFIG_CRYPTO_FCRYPT \ + CONFIG_CRYPTO_KHAZAD \ + CONFIG_CRYPTO_MD4 \ + CONFIG_CRYPTO_SERPENT \ + CONFIG_CRYPTO_SHA256 \ + CONFIG_CRYPTO_SHA512 \ + CONFIG_CRYPTO_TEA \ + CONFIG_CRYPTO_TGR192 \ + CONFIG_CRYPTO_TWOFISH \ + CONFIG_CRYPTO_TWOFISH_586 \ + CONFIG_CRYPTO_WP512 + FILES:= \ + $(LINUX_DIR)/crypto/anubis.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/blowfish.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/cast5.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/cast6.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/khazad.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/md4.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/serpent.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/sha256.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/sha512.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/tea.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/twofish.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/wp512.$(LINUX_KMOD_SUFFIX) +endef + +define KernelPackage/crypto-misc/2.6 + FILES+= \ + $(LINUX_DIR)/crypto/camellia.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/crc32c.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/fcrypt.$(LINUX_KMOD_SUFFIX) \ + $(LINUX_DIR)/crypto/tgr192.$(LINUX_KMOD_SUFFIX) +endef + +$(eval $(call KernelPackage,crypto-misc)) + + +define KernelPackage/crypto-null + SUBMENU:=$(CRYPTO_MENU) + TITLE:=Null CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_NULL + FILES:=$(LINUX_DIR)/crypto/crypto_null.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,crypto_null) +endef + +$(eval $(call KernelPackage,crypto-null)) + + +define KernelPackage/crypto-test + SUBMENU:=$(CRYPTO_MENU) + TITLE:=Test CryptoAPI module + DEPENDS:=kmod-crypto-core + KCONFIG:=CONFIG_CRYPTO_NULL + FILES:=$(LINUX_DIR)/crypto/tcrypt.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoLoad,09,tcrypt) +endef + +$(eval $(call KernelPackage,crypto-test)) + diff --git a/package/kernel/modules/network.mk b/package/kernel/modules/network.mk index 130d9f5..b9a8a34 100644 --- a/package/kernel/modules/network.mk +++ b/package/kernel/modules/network.mk @@ -83,7 +83,7 @@ $(eval $(call KernelPackage,capi)) define KernelPackage/ipsec SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=IPsec related modules (IPv4 and IPv6) - DEPENDS:=@LINUX_2_6 +kmod-crypto + DEPENDS:=@LINUX_2_6 +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1 KCONFIG:= \ CONFIG_NET_KEY \ CONFIG_XFRM_USER @@ -359,7 +359,7 @@ $(eval $(call KernelPackage,ipoa)) define KernelPackage/mppe SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=Microsoft PPP compression/encryption - DEPENDS:=kmod-ppp +kmod-crypto + DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1 KCONFIG:= \ CONFIG_PPP_MPPE_MPPC \ CONFIG_PPP_MPPE diff --git a/package/kernel/modules/other.mk b/package/kernel/modules/other.mk index 6d94b77..0e3368b 100644 --- a/package/kernel/modules/other.mk +++ b/package/kernel/modules/other.mk @@ -23,41 +23,6 @@ endef $(eval $(call KernelPackage,crc-itu-t)) -define KernelPackage/crypto - SUBMENU:=$(OTHER_MENU) - TITLE:=CryptoAPI modules - KCONFIG:= \ - CONFIG_CRYPTO_HMAC=m \ - CONFIG_CRYPTO_NULL=m \ - CONFIG_CRYPTO_MD4=m \ - CONFIG_CRYPTO_MD5=m \ - CONFIG_CRYPTO_SHA1=m \ - CONFIG_CRYPTO_SHA256=m \ - CONFIG_CRYPTO_SHA512=m \ - CONFIG_CRYPTO_WP512=m \ - CONFIG_CRYPTO_TGR192=m \ - CONFIG_CRYPTO_DES=m \ - CONFIG_CRYPTO_BLOWFISH=m \ - CONFIG_CRYPTO_TWOFISH=m \ - CONFIG_CRYPTO_SERPENT=m \ - CONFIG_CRYPTO_AES=m \ - CONFIG_CRYPTO_CAST5=m \ - CONFIG_CRYPTO_CAST6=m \ - CONFIG_CRYPTO_TEA=m \ - CONFIG_CRYPTO_ARC4=m \ - CONFIG_CRYPTO_KHAZAD=m \ - CONFIG_CRYPTO_ANUBIS=m \ - CONFIG_CRYPTO_DEFLATE=m \ - CONFIG_CRYPTO_MICHAEL_MIC=m \ - CONFIG_CRYPTO_CRC32C=m \ - CONFIG_CRYPTO_ECB=m \ - CONFIG_CRYPTO_BLKCIPHER=m - FILES:=$(LINUX_DIR)/crypto/*.$(LINUX_KMOD_SUFFIX) -endef - -$(eval $(call KernelPackage,crypto)) - - define KernelPackage/eeprom-93cx6 SUBMENU:=$(OTHER_MENU) TITLE:=EEPROM 93CX6 support diff --git a/package/kernel/modules/wireless.mk b/package/kernel/modules/wireless.mk index f8d73f9..a9ec1f5 100644 --- a/package/kernel/modules/wireless.mk +++ b/package/kernel/modules/wireless.mk @@ -11,7 +11,7 @@ WIRELESS_MENU:=Wireless Drivers define KernelPackage/ieee80211 SUBMENU:=$(WIRELESS_MENU) TITLE:=802.11 Networking stack - DEPENDS:=@LINUX_2_6 +kmod-crypto + DEPENDS:=@LINUX_2_6 +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic KCONFIG:= \ CONFIG_IEEE80211 \ CONFIG_IEEE80211_CRYPT_WEP \ diff --git a/package/mac80211/Makefile b/package/mac80211/Makefile index bfd4a2c..66a530d 100644 --- a/package/mac80211/Makefile +++ b/package/mac80211/Makefile @@ -20,7 +20,7 @@ endif define KernelPackage/mac80211 SUBMENU:=Wireless Drivers TITLE:=Linux 802.11 Wireless Networking Stack - DEPENDS:=@LINUX_2_6 + DEPENDS:=@LINUX_2_6 +kmod-crypto-arc4 +kmod-crypto-aes KCONFIG:=CONFIG_MAC80211 FILES:= \ $(PKG_BUILD_DIR)/mac80211/mac80211.$(LINUX_KMOD_SUFFIX) \ diff --git a/package/rt2x00/Makefile b/package/rt2x00/Makefile index 9dd9286..0d82296 100644 --- a/package/rt2x00/Makefile +++ b/package/rt2x00/Makefile @@ -35,7 +35,7 @@ endef define KernelPackage/rt2x00-lib $(call KernelPackage/rt2x00/Default) - DEPENDS+= @PCI_SUPPORT||USB_SUPPORT +kmod-mac80211 +kmod-crypto + DEPENDS+= @PCI_SUPPORT||USB_SUPPORT +kmod-mac80211 TITLE+= (LIB) FILES:=$(PKG_BUILD_DIR)/rt2x00lib.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,25,blkcipher ecb arc4 rt2x00lib) -- cgit v1.1