diff options
Diffstat (limited to 'app-crypt')
-rw-r--r-- | app-crypt/eid-mw/Manifest | 1 | ||||
-rw-r--r-- | app-crypt/eid-mw/eid-mw-4.2.8.ebuild | 95 | ||||
-rw-r--r-- | app-crypt/eid-mw/files/fix_libressl_check.patch | 45 |
3 files changed, 141 insertions, 0 deletions
diff --git a/app-crypt/eid-mw/Manifest b/app-crypt/eid-mw/Manifest index 881a3d0dc699..be14ea389689 100644 --- a/app-crypt/eid-mw/Manifest +++ b/app-crypt/eid-mw/Manifest @@ -1,2 +1,3 @@ DIST eid-mw-4.2.0.tar.gz 8508064 SHA256 4d86f4750f973a8dcf700544b92ffc3069a85ff93086538b9f334d76dd5c9747 SHA512 c0785e25c8b3640d0b60110553a520df3c3c5a0774f4f3fba6a4d9329c0d6e6187b0837d8c254a3959ffa798dc6299399e6cb8edfc7a20dabca080b61f532a5f WHIRLPOOL b1dee0c0a1800b81a7f392bc0e13d070a1cbc7fa6eb2f26e9c50903e058f322ff0b2da69469f90bd38240f49520be29bb548ca6954bc052ef5b23bdb4cad2643 DIST eid-mw-4.2.5.tar.gz 7751526 SHA256 d2c46a65026790485f39db0b6d9b66a65b1d19061f3682a0b6da2e2b0c54bc81 SHA512 cf00f6aa295c3d057e77faddde31ba6b00ce44402bc0ad141c773fb58067d7cf2e107fc5f3a294be8731de592cb0895537cd29ad4e69f6721e6c77fa99c12075 WHIRLPOOL c24186b1f2b6b02df4a790e3a8c3d1f8e762b1e556d8f55aeeb4523a71387045827b47444246334933fc3d746485ea14086cfe41c5ec23f43826e6a7375c7fc3 +DIST eid-mw-4.2.8.tar.gz 7076407 SHA256 6b998bd14897f640e29f9140ee457ea963162a409c7aff646e3346b0b0ae2e65 SHA512 bf910e8b5bad40fe65765524af20cf18e2c615b6b7bddfdd3024309d90767952875f1c264ea8bd8dfc73621a41683fce02501febe71c016816ccc0f75d88d8cb WHIRLPOOL 12f998d6065ed0eddbee5c6f99ef75f2bd3b3344314c7dd2e2e8a5652ea0f5adc9159af22d30ff8c4349bf75a71f982c26de886bf287d379fc99e5b341b4c303 diff --git a/app-crypt/eid-mw/eid-mw-4.2.8.ebuild b/app-crypt/eid-mw/eid-mw-4.2.8.ebuild new file mode 100644 index 000000000000..cadd463d7668 --- /dev/null +++ b/app-crypt/eid-mw/eid-mw-4.2.8.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils autotools mozextension + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="git://github.com/Fedict/${PN}.git + https://github.com/Fedict/${PN}.git" + inherit git-r3 + SRC_URI="" +else + SRC_URI="https://codeload.github.com/fedict/${PN}/tar.gz/v${PV} -> + ${P}.tar.gz" + KEYWORDS="~x86 ~amd64 ~arm" +fi + +SLOT="0" +LICENSE="LGPL-3" +DESCRIPTION="Electronic Identity Card middleware supplied by the Belgian Federal Government" + +HOMEPAGE="https://eid.belgium.be" + +IUSE="+dialogs +gtk p11-kit +xpi" + +REQUIRED_USE=" + dialogs? ( gtk )" + +RDEPEND="gtk? ( + x11-libs/gdk-pixbuf[jpeg] + x11-libs/gtk+:* + dev-libs/libxml2 + net-misc/curl[ssl] + net-libs/libproxy + !app-misc/eid-viewer-bin + ) + >=sys-apps/pcsc-lite-1.2.9 + p11-kit? ( app-crypt/p11-kit ) + xpi? ( || ( >=www-client/firefox-bin-3.6.24 + >=www-client/firefox-3.6.20 ) )" + +DEPEND="${RDEPEND} + virtual/pkgconfig" + +src_prepare() { + eapply_user + + sed -i -e 's:/beid/rsaref220:/rsaref220:' configure.ac || die + sed -i -e 's:/beid::' cardcomm/pkcs11/src/libbeidpkcs11.pc.in || die + + # hardcoded lsb_info + sed -i \ + -e "s:get_lsb_info('i'):strdup(_(\"Gentoo\")):" \ + -e "s:get_lsb_info('r'):strdup(_(\"n/a\")):" \ + -e "s:get_lsb_info('c'):strdup(_(\"n/a\")):" \ + plugins_tools/aboutmw/gtk/about-main.c || die + + use gtk || eapply "${FILESDIR}"/gtk_not_required_4_2_5.patch + eapply "${FILESDIR}"/fix_libressl_check.patch + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable dialogs) \ + $(use_enable p11-kit p11kit) \ + --with-gnu-ld \ + --disable-static \ + --disable-signed +} + +src_install() { + emake DESTDIR="${D}" install + + if use xpi; then + declare MOZILLA_FIVE_HOME + if has_version '>=www-client/firefox-3.6.20'; then + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/firefox" + xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be" + fi + if has_version '>=www-client/firefox-bin-3.6.24'; then + MOZILLA_FIVE_HOME="/opt/firefox" + xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be" + fi + fi + rm -r "${D}/usr/share/mozilla" "${D}"/usr/$(get_libdir)/*.la || die + use gtk || rm -r "${D}/usr/include/eid-util" || die +} + +pkg_postinst() +{ + use gtk && glib-compile-schemas /usr/share/glib-2.0/schemas/ +} diff --git a/app-crypt/eid-mw/files/fix_libressl_check.patch b/app-crypt/eid-mw/files/fix_libressl_check.patch new file mode 100644 index 000000000000..5476e3e4aaff --- /dev/null +++ b/app-crypt/eid-mw/files/fix_libressl_check.patch @@ -0,0 +1,45 @@ +commit 53289f71c53f3aa8047b34d6db9b0ca2ac35f4cb +Author: Cédric Krier <ced@b2ck.com> +Date: Wed Jun 7 11:29:13 2017 +0200 + + Fix OpenSSL version check for LibreSSL + +diff --git a/plugins_tools/eid-viewer/certhelpers.c b/plugins_tools/eid-viewer/certhelpers.c +index de9f8bf4..1e3d1ee1 100644 +--- a/plugins_tools/eid-viewer/certhelpers.c ++++ b/plugins_tools/eid-viewer/certhelpers.c +@@ -12,7 +12,7 @@ + + #include "backend.h" + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + #define X509_get0_extensions(ce) ((ce)->cert_info->extensions) + #define ASN1_STRING_get0_data ASN1_STRING_data + #endif +diff --git a/plugins_tools/eid-viewer/verify.c b/plugins_tools/eid-viewer/verify.c +index 04016a44..f144d2cb 100644 +--- a/plugins_tools/eid-viewer/verify.c ++++ b/plugins_tools/eid-viewer/verify.c +@@ -22,7 +22,7 @@ + #endif + // All valid OCSP URLs should have the following as their prefix: + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + #define X509_get0_extensions(ce) ((ce)->cert_info->extensions) + + #define X509_get0_tbs_sigalg(ci) ((ci)->sig_alg) +diff --git a/tests/unit/sign.c b/tests/unit/sign.c +index 31a1ab7a..0e0e3011 100644 +--- a/tests/unit/sign.c ++++ b/tests/unit/sign.c +@@ -37,7 +37,7 @@ + #include <openssl/rsa.h> + #include <openssl/engine.h> + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + static int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d) { + if(!r || !n || !e) { + return 0; |