From 31d38be94f651f42df8ce08f433e290129a1f49a Mon Sep 17 00:00:00 2001 From: Alon Bar-Lev Date: Wed, 7 Dec 2016 09:40:22 +0200 Subject: app-crypt/trousers: support libressl Package-Manager: portage-2.3.0 --- .../trousers/files/trousers-0.3.14-libressl.patch | 26 +++++ app-crypt/trousers/trousers-0.3.14-r1.ebuild | 106 +++++++++++++++++++++ app-crypt/trousers/trousers-0.3.14.ebuild | 105 -------------------- 3 files changed, 132 insertions(+), 105 deletions(-) create mode 100644 app-crypt/trousers/files/trousers-0.3.14-libressl.patch create mode 100644 app-crypt/trousers/trousers-0.3.14-r1.ebuild delete mode 100644 app-crypt/trousers/trousers-0.3.14.ebuild (limited to 'app-crypt') diff --git a/app-crypt/trousers/files/trousers-0.3.14-libressl.patch b/app-crypt/trousers/files/trousers-0.3.14-libressl.patch new file mode 100644 index 000000000000..927626892b19 --- /dev/null +++ b/app-crypt/trousers/files/trousers-0.3.14-libressl.patch @@ -0,0 +1,26 @@ +From b8b1cda430270f03dc556cf9cf7d2fd478101525 Mon Sep 17 00:00:00 2001 +From: Alon Bar-Lev +Date: Wed, 7 Dec 2016 09:36:34 +0200 +Subject: [PATCH] tspi: support libressl + +Signed-off-by: Alon Bar-Lev +--- + src/trspi/crypto/openssl/rsa.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/trspi/crypto/openssl/rsa.c b/src/trspi/crypto/openssl/rsa.c +index 2b1205f..3e56015 100644 +--- a/src/trspi/crypto/openssl/rsa.c ++++ b/src/trspi/crypto/openssl/rsa.c +@@ -38,7 +38,7 @@ + #define DEBUG_print_openssl_errors() + #endif + +-#if OPENSSL_VERSION_NUMBER < 0x10100001L ++#if OPENSSL_VERSION_NUMBER < 0x10100001L || defined(LIBRESSL_VERSION_NUMBER) + static int + RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d) + { +-- +2.7.3 + diff --git a/app-crypt/trousers/trousers-0.3.14-r1.ebuild b/app-crypt/trousers/trousers-0.3.14-r1.ebuild new file mode 100644 index 000000000000..235494ae9dfd --- /dev/null +++ b/app-crypt/trousers/trousers-0.3.14-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit autotools eutils linux-info readme.gentoo-r1 systemd user udev + +DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation" +HOMEPAGE="http://trousers.sf.net" +SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz" + +LICENSE="CPL-1.0 GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~x86" +IUSE="doc libressl selinux" # gtk + +# gtk support presently does NOT compile. +# gtk? ( >=x11-libs/gtk+-2 ) + +CDEPEND=">=dev-libs/glib-2 + !libressl? ( >=dev-libs/openssl-0.9.7:0 ) + libressl? ( dev-libs/libressl ) +" +DEPEND="${CDEPEND} + virtual/pkgconfig" +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-tcsd )" + +PATCHES=( + "${FILESDIR}/${PN}-0.3.13-nouseradd.patch" + "${FILESDIR}/${P}-libressl.patch" +) + +DOCS="AUTHORS ChangeLog NICETOHAVES README TODO" + +DOC_CONTENTS=" + If you have problems starting tcsd, please check permissions and + ownership on /dev/tpm* and ~tss/system.data +" + +S="${WORKDIR}" + +pkg_setup() { + # Check for driver (not sure it can be an rdep, because ot depends on the + # version of virtual/linux-sources... Is that supported by portage?) + linux-info_pkg_setup + local tpm_kernel_version tpm_kernel_present tpm_module + kernel_is ge 2 6 12 && tpm_kernel_version="yes" + if linux_config_exists; then + linux_chkconfig_present TCG_TPM && tpm_kernel_present="yes" + else + ewarn "No kernel configuration could be found." + fi + has_version app-crypt/tpm-emulator && tpm_module="yes" + if [[ -n "${tpm_kernel_present}" ]]; then + einfo "Good, you seem to have in-kernel TPM support." + elif [[ -n "${tpm_module}" ]]; then + einfo "Good, you seem to have TPM support with the external module." + if [[ -n "${tpm_kernel_version}" ]]; then + elog + elog "Note that since you have a >=2.6.12 kernel, you could use" + elog "the in-kernel driver instead of (CONFIG_TCG_TPM)." + fi + elif [[ -n "${tpm_kernel_version}" ]]; then + eerror + eerror "To use this package, you will have to activate TPM support" + eerror "in your kernel configuration. That's at least CONFIG_TCG_TPM," + eerror "plus probably a chip specific driver (like CONFIG_TCG_ATMEL)." + eerror + else + eerror + eerror "To use this package, you should install a TPM driver." + eerror "You can have the following options:" + eerror " - install app-crypt/tpm-emulator" + eerror " - switch to a >=2.6.12 kernel and compile the kernel module" + eerror + fi + + # New user/group for the daemon + enewgroup tss + enewuser tss -1 -1 /var/lib/tpm tss +} + +src_prepare() { + default + eautoreconf +} + +src_configure() { + # econf --with-gui=$(usex gtk gtk openssl) + econf --with-gui=openssl +} + +src_install() { + default + keepdir /var/lib/tpm + use doc && dodoc doc/* + newinitd "${FILESDIR}"/tcsd.initd tcsd + newconfd "${FILESDIR}"/tcsd.confd tcsd + systemd_dounit "${FILESDIR}"/tcsd.service + udev_dorules "${FILESDIR}"/61-trousers.rules + fowners tss:tss /var/lib/tpm + prune_libtool_files + readme.gentoo_create_doc +} diff --git a/app-crypt/trousers/trousers-0.3.14.ebuild b/app-crypt/trousers/trousers-0.3.14.ebuild deleted file mode 100644 index 1e8be96d2240..000000000000 --- a/app-crypt/trousers/trousers-0.3.14.ebuild +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI=6 - -inherit autotools eutils linux-info readme.gentoo-r1 systemd user udev - -DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation" -HOMEPAGE="http://trousers.sf.net" -SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz" - -LICENSE="CPL-1.0 GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~x86" -IUSE="doc libressl selinux" # gtk - -# gtk support presently does NOT compile. -# gtk? ( >=x11-libs/gtk+-2 ) - -CDEPEND=">=dev-libs/glib-2 - !libressl? ( >=dev-libs/openssl-0.9.7:0 ) - libressl? ( dev-libs/libressl ) -" -DEPEND="${CDEPEND} - virtual/pkgconfig" -RDEPEND="${CDEPEND} - selinux? ( sec-policy/selinux-tcsd )" - -PATCHES=( - "${FILESDIR}/${PN}-0.3.13-nouseradd.patch" -) - -DOCS="AUTHORS ChangeLog NICETOHAVES README TODO" - -DOC_CONTENTS=" - If you have problems starting tcsd, please check permissions and - ownership on /dev/tpm* and ~tss/system.data -" - -S="${WORKDIR}" - -pkg_setup() { - # Check for driver (not sure it can be an rdep, because ot depends on the - # version of virtual/linux-sources... Is that supported by portage?) - linux-info_pkg_setup - local tpm_kernel_version tpm_kernel_present tpm_module - kernel_is ge 2 6 12 && tpm_kernel_version="yes" - if linux_config_exists; then - linux_chkconfig_present TCG_TPM && tpm_kernel_present="yes" - else - ewarn "No kernel configuration could be found." - fi - has_version app-crypt/tpm-emulator && tpm_module="yes" - if [[ -n "${tpm_kernel_present}" ]]; then - einfo "Good, you seem to have in-kernel TPM support." - elif [[ -n "${tpm_module}" ]]; then - einfo "Good, you seem to have TPM support with the external module." - if [[ -n "${tpm_kernel_version}" ]]; then - elog - elog "Note that since you have a >=2.6.12 kernel, you could use" - elog "the in-kernel driver instead of (CONFIG_TCG_TPM)." - fi - elif [[ -n "${tpm_kernel_version}" ]]; then - eerror - eerror "To use this package, you will have to activate TPM support" - eerror "in your kernel configuration. That's at least CONFIG_TCG_TPM," - eerror "plus probably a chip specific driver (like CONFIG_TCG_ATMEL)." - eerror - else - eerror - eerror "To use this package, you should install a TPM driver." - eerror "You can have the following options:" - eerror " - install app-crypt/tpm-emulator" - eerror " - switch to a >=2.6.12 kernel and compile the kernel module" - eerror - fi - - # New user/group for the daemon - enewgroup tss - enewuser tss -1 -1 /var/lib/tpm tss -} - -src_prepare() { - default - eautoreconf -} - -src_configure() { - # econf --with-gui=$(usex gtk gtk openssl) - econf --with-gui=openssl -} - -src_install() { - default - keepdir /var/lib/tpm - use doc && dodoc doc/* - newinitd "${FILESDIR}"/tcsd.initd tcsd - newconfd "${FILESDIR}"/tcsd.confd tcsd - systemd_dounit "${FILESDIR}"/tcsd.service - udev_dorules "${FILESDIR}"/61-trousers.rules - fowners tss:tss /var/lib/tpm - prune_libtool_files - readme.gentoo_create_doc -} -- cgit v1.2.3-65-gdbad