From 1a4a9cea95d2e3d314ae6deebef26a1c34914601 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 28 Jan 2010 19:28:06 +0000 Subject: [PATCH] openssl: make engines support dynamically configurable (based on a patch by puchu) SVN-Revision: 19371 --- package/kernel/modules/crypto.mk | 2 +- package/openssl/Config.in | 9 +++++++++ package/openssl/Makefile | 20 +++++++++++++------- package/ubsec_ssb/Makefile | 3 ++- 4 files changed, 25 insertions(+), 9 deletions(-) create mode 100644 package/openssl/Config.in diff --git a/package/kernel/modules/crypto.mk b/package/kernel/modules/crypto.mk index 818a1d090c..879fa969f9 100644 --- a/package/kernel/modules/crypto.mk +++ b/package/kernel/modules/crypto.mk @@ -280,7 +280,7 @@ $(eval $(call KernelPackage,crypto-misc)) define KernelPackage/crypto-ocf -$(call KernelPackage/crypto/Depends,@!TARGET_uml) +$(call KernelPackage/crypto/Depends,@!TARGET_uml +@OPENSSL_ENGINE) TITLE:=OCF modules KCONFIG:= \ CONFIG_OCF_OCF \ diff --git a/package/openssl/Config.in b/package/openssl/Config.in new file mode 100644 index 0000000000..96cba4916d --- /dev/null +++ b/package/openssl/Config.in @@ -0,0 +1,9 @@ +# OpenSSL configuration + +if PACKAGE_libopenssl + +config OPENSSL_ENGINE + bool + prompt "Crypto acceleration support" + +endif diff --git a/package/openssl/Makefile b/package/openssl/Makefile index ac565218da..2d2a940499 100644 --- a/package/openssl/Makefile +++ b/package/openssl/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openssl PKG_VERSION:=0.9.8l -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.openssl.org/source/ \ @@ -18,7 +18,8 @@ PKG_SOURCE_URL:=http://www.openssl.org/source/ \ ftp://ftp.sunet.se/pub/security/tools/net/openssl/source/ PKG_MD5SUM:=05a0ece1372392a2cf310ebb96333025 -PKG_BUILD_DEPENDS:=ocf-crypto-headers +PKG_BUILD_DEPENDS := ocf-crypto-headers +PKG_CONFIG_DEPENDS := CONFIG_OPENSSL_ENGINE include $(INCLUDE_DIR)/package.mk @@ -27,6 +28,10 @@ define Package/openssl/Default URL:=http://www.openssl.org/ endef +define Package/libopenssl/config +source "$(SOURCE)/Config.in" +endef + define Package/openssl/Default/description The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the @@ -69,13 +74,14 @@ endef OPENSSL_NO_CIPHERS:= no-idea no-md2 no-mdc2 no-rc5 no-sha0 no-smime \ no-rmd160 no-aes192 no-ripemd no-camellia no-ans1 no-krb5 -ifeq ($(BOARD),ixp4xx) -OPENSSL_OPTIONS:= shared no-ec no-err no-hw no-threads zlib-dynamic \ - no-sse2 --with-cryptodev +OPENSSL_OPTIONS:= shared no-ec no-err no-hw no-threads zlib-dynamic no-sse2 + +ifdef CONFIG_OPENSSL_ENGINE + OPENSSL_OPTIONS += --with-cryptodev else -OPENSSL_OPTIONS:= shared no-ec no-err no-hw no-threads zlib-dynamic \ - no-engines no-sse2 + OPENSSL_OPTIONS += no-engines endif + ifdef CONFIG_arm OPENSSL_MAKEFLAGS := AES_ASM_OBJ="aes-armv4.o aes_cbc.o" else diff --git a/package/ubsec_ssb/Makefile b/package/ubsec_ssb/Makefile index 9c108d1ca7..6a14e2a910 100644 --- a/package/ubsec_ssb/Makefile +++ b/package/ubsec_ssb/Makefile @@ -10,6 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=ubsec-ssb PKG_VERSION:=2009-02-21 +PKG_RELEASE:=1 CRYPTO_MENU:=OCF Configuration @@ -17,7 +18,7 @@ include $(INCLUDE_DIR)/package.mk define KernelPackage/ocf-ubsec-ssb SUBMENU:=$(CRYPTO_MENU) - DEPENDS:=@TARGET_brcm47xx +kmod-crypto-core +kmod-crypto-ocf + DEPENDS:=@TARGET_brcm47xx +@OPENSSL_ENGINE +kmod-crypto-core +kmod-crypto-ocf TITLE:=BCM5365P IPSec Core driver FILES:=$(PKG_BUILD_DIR)/src/ubsec_ssb.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,09,ubsec_ssb)