summaryrefslogtreecommitdiff
path: root/app-crypt/gnupg
diff options
context:
space:
mode:
Diffstat (limited to 'app-crypt/gnupg')
-rw-r--r--app-crypt/gnupg/Manifest2
-rw-r--r--app-crypt/gnupg/files/gnupg-2.2.4-dirmngr-Handle-failures-related-to-missing-IPv6.patch31
-rw-r--r--app-crypt/gnupg/gnupg-2.2.4-r2.ebuild130
3 files changed, 163 insertions, 0 deletions
diff --git a/app-crypt/gnupg/Manifest b/app-crypt/gnupg/Manifest
index 2fff53f1a758..a6eeea2b5611 100644
--- a/app-crypt/gnupg/Manifest
+++ b/app-crypt/gnupg/Manifest
@@ -2,6 +2,7 @@ AUX gnupg-2.1.20-gpg-Fix-typo.patch 843 BLAKE2B 6e7c56d54ef0b0a1e14030a7636bd35d
AUX gnupg-2.1.20-gpg-Properly-account-for-ring-trust-packets.patch 2987 BLAKE2B eff568f4988b147a9d1aba77965222fcbfc2e9c3efef8eed9ce58f1c7058214ece62046435c90227d8fce1829f3131387f59598676d1359320f61b441018eb85 SHA512 2cf3147638c69f49b4d792a01321b5892f882fc67a1aee8f51f9b35761e6961e9c46d9abc92b0e5250a85b7145e69ba9583b3ce2323943587feb52a029e95deb
AUX gnupg-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch 1048 BLAKE2B 36f37b74da309100191f4d8f9c27d08a1b00d2d30fbaf169dbb74ebbe42293357a4fb62332e286fe5725dcfdc30645a602dc2a51c51924b06215b68fd5235658 SHA512 fd12827150e96cd7979ea9611d64ed4ab9e6c61cfecdd697b8fb4d162f20985b734c2bfc365a921809b9029e86a85a9b36c10ec472b3dd49c25ea18f5aef56ce
AUX gnupg-2.2.1-fix-gnupg-wait.patch 2881 BLAKE2B 054c3de81a2ae70c7dea439cd66b9d5642510920af9ba48e4dab28c3457dad95f7ffd3ddb106dd4a5dacebfbedf225e88ad57934ee03a6b80da00ac03f7f944d SHA512 3622c1667c3f0b0acb28fd3ac440af76c0f2757e1d654fbd85344a1193a088db087861f7410e249ece5c99fd7afd7d7a24c43f58e88f5c21949195714be4cbf6
+AUX gnupg-2.2.4-dirmngr-Handle-failures-related-to-missing-IPv6.patch 1342 BLAKE2B d494d544e9bbfd4115b58cc0117171d7792b44158e48032ddfdbacaff38cc5aebae4e1f1d46fa814ea40504441c8288937a5cfa7d475246cd301061176969e7c SHA512 171ae5092b9cab26446a2c4fe12137f5f1e92ba1d3c542a52900c14c488d902dfad84594473063f7eacb65ff7cefadb88239534498245f79f16ce8c58005f99c
DIST gnupg-1.4.21.tar.bz2 3689305 BLAKE2B 0c26c9c3aeae2bf2eafa858bc3bd15cc2702bce12a8a90938565322c34e2eeb8e5432932f5c9344a76aa4528b66051141536c062d9923a79d12a0767421bb017 SHA512 619e0fbc10310c7e55d129027e2945791fe91a0884b1d6f53acb4b2e380d1c6e71d1a516a59876182c5c70a4227d44a74ceda018c343b5291fa9a5d6de77c984
DIST gnupg-2.1.15.tar.bz2 5723689 BLAKE2B 48889c0a5445b5b76b027debd6a4711930694e7440b76c06a7da1db5e7989eeae791e4c7a29e60a9d0b862c167374016d908aaa54165a44268f072075cdd9690 SHA512 69c943e853e1a37e8b17b3bc34e1503f14bc8f189fa9f3ac6644bcc98ccce6eaef64da20ff9dd1c8de3a7789ea577167984ccf3ac286cac50752e6f7c2f42ab1
DIST gnupg-2.1.20.tar.bz2 6456128 BLAKE2B 009a8b8163701f5f5e269caea315a81f4c90c32ec19d501e9fd180bdd3a21454956549b433eb81e98c7a22c4c551eed666d9f3e59ea8e55ed2545ddf49334151 SHA512 14a9890bc64e143f87cff121dd298d490d78dbd34e36883e0f25763ff9064e5706a7632893d7c5d0e8e9b8cf9cdb0d378b4ce1715348729f0fc080455b61eca9
@@ -16,5 +17,6 @@ EBUILD gnupg-2.2.0.ebuild 3121 BLAKE2B abb9424fbbd74ed5d0e3a71f48af85e9d569601ec
EBUILD gnupg-2.2.1.ebuild 3224 BLAKE2B 3e5c1fa5fdd5fbca8a5b554b09e2221ba612185415e009ebbf2e999369dfa4697139674ccf94b9be52bc2c8024b56a4a846f1803a940755a1650765325a10d17 SHA512 ebe3107c7444f4f821760d854da5376a9953b7e6781673cc55b3704ce9accf5306277140648a047f9fe705c7e5ef7922e45c0fceb8508d80edd63b6dab08b579
EBUILD gnupg-2.2.3.ebuild 3209 BLAKE2B 44f319cfee71a4c4c38deb496f361e022e2b729b2d075e3d2c03f4276f69b5b8e42bffd90eed5a8b0cccc468bf2512cd6c6b593e6b74cf2ac9867c8f05b0b447 SHA512 4800b7469ad42721294d08c05aa32914a9f0b6d8313efc10a44d5d6b4f9e62d8ee4eb083162808aad5b9829ddc041ea4cac53a60f7b7614451fba41a69c39a28
EBUILD gnupg-2.2.4-r1.ebuild 3206 BLAKE2B 084fd1814201be6c963a2adc262e4a8c137950cd07a15d9e021d149de752894b3db1096ccf59f04f97fe7ab1764471b6063e103e8f28bb0fc68a2d3ea04f1612 SHA512 b3112ebc907b92caa56f7786a15589701fcbcceb1de8f8ea78d22921a293d84454902f8ca11250c63b5f833936cc46d3d31d5878df712586c032b1297980c603
+EBUILD gnupg-2.2.4-r2.ebuild 3277 BLAKE2B 9823777c197f629c7776b7e61c7d239bc7b174444be69b35ee4c707f8cb61cd9c1ef491bfe863a5a37c1c0b284183d705e952a7b3c1030f4b1aae13ccea76470 SHA512 ed62cccfc4b81acea0f9b9a18c7d652c05a1ae5d4740350df50443a3004605a3d399fd58120636c84b896069d2709b1fb8a56b9f7acf29f22b70404f4a971eba
EBUILD gnupg-2.2.4.ebuild 3203 BLAKE2B 42bf0180668dc428b4d6529d23f38c82ff31bf9ad41c8be1f157718f25e96203d16a9e6e6f2764bc8865fa78001ca862a3ca81b1bffd1cc569a6e706e45f6487 SHA512 13fbcc6aff14cde19508f631c9912e5b5648cda50c8a8ddf4b9fe3a84495344470747f8d57a238f3323c651290eaed6935b958f7fadf408a257fea4b4a011ffc
MISC metadata.xml 1198 BLAKE2B 745e725cf4c88e72dae88f6c2030ec755a79c449c68caaf0fbd1af6f996791500ae9490127cc50cc165180f754de1c71216e89fb899329c0b108810a866612cf SHA512 cd4ad4996e1c641bf8b6815a72f90427fa3c20864fe440157068ebb38300228e907ccf34fca2fd9ba821eeadee741c0cf8d8b09ce60c965f340e64c4fae3c069
diff --git a/app-crypt/gnupg/files/gnupg-2.2.4-dirmngr-Handle-failures-related-to-missing-IPv6.patch b/app-crypt/gnupg/files/gnupg-2.2.4-dirmngr-Handle-failures-related-to-missing-IPv6.patch
new file mode 100644
index 000000000000..53843900b9f3
--- /dev/null
+++ b/app-crypt/gnupg/files/gnupg-2.2.4-dirmngr-Handle-failures-related-to-missing-IPv6.patch
@@ -0,0 +1,31 @@
+From b7f48a0095a5b010b94f8192f4adc1adf8697567 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Wed, 31 Jan 2018 16:57:19 +0100
+Subject: [PATCH] dirmngr: Handle failures related to missing IPv6 gracefully
+
+Handle the two possible connect failures related to missing IPv6 support
+gracefully by marking the host dead and retrying with another one.
+If IPv6 is disabled via procfs, connect() will return EADDRNOTAVAIL.
+If IPv6 is not compiled into the kernel, it will return EAFNOSUPPORT.
+This makes it possible to use dual-stack hkp servers on hosts not having
+IPv6 without random connection failures.
+---
+ dirmngr/ks-engine-hkp.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c
+index 4a0b08f4f..a9bb93666 100644
+--- a/dirmngr/ks-engine-hkp.c
++++ b/dirmngr/ks-engine-hkp.c
+@@ -1353,6 +1353,8 @@ handle_send_request_error (ctrl_t ctrl, gpg_error_t err, const char *request,
+ case GPG_ERR_UNKNOWN_HOST:
+ case GPG_ERR_NETWORK:
+ case GPG_ERR_EIO: /* Sometimes used by estream cookie functions. */
++ case GPG_ERR_EADDRNOTAVAIL: /* e.g. when IPv6 is disabled */
++ case GPG_ERR_EAFNOSUPPORT: /* e.g. when IPv6 is not compiled in */
+ if (mark_host_dead (request) && *tries_left)
+ retry = 1;
+ break;
+--
+2.16.1
+
diff --git a/app-crypt/gnupg/gnupg-2.2.4-r2.ebuild b/app-crypt/gnupg/gnupg-2.2.4-r2.ebuild
new file mode 100644
index 000000000000..94a73507e7e8
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-2.2.4-r2.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit systemd toolchain-funcs
+
+MY_P="${P/_/-}"
+
+DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation"
+HOMEPAGE="http://www.gnupg.org/"
+SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl tofu tools usb wks-server"
+
+COMMON_DEPEND_LIBS="
+ >=dev-libs/npth-1.2
+ >=dev-libs/libassuan-2.5.0
+ >=dev-libs/libgcrypt-1.7.3
+ >=dev-libs/libgpg-error-1.24
+ >=dev-libs/libksba-1.3.4
+ >=net-misc/curl-7.10
+ ssl? ( >=net-libs/gnutls-3.0:0= )
+ sys-libs/zlib
+ ldap? ( net-nds/openldap )
+ bzip2? ( app-arch/bzip2 )
+ readline? ( sys-libs/readline:0= )
+ smartcard? ( usb? ( virtual/libusb:0 ) )
+ tofu? ( >=dev-db/sqlite-3.7 )
+ "
+COMMON_DEPEND_BINS="app-crypt/pinentry
+ !app-crypt/dirmngr"
+
+# Existence of executables is checked during configuration.
+DEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ nls? ( sys-devel/gettext )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ selinux? ( sec-policy/selinux-gpg )
+ nls? ( virtual/libintl )"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=(
+ ChangeLog NEWS README THANKS TODO VERSION
+ doc/FAQ doc/DETAILS doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER
+)
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch"
+ "${FILESDIR}/${P}-dirmngr-Handle-failures-related-to-missing-IPv6.patch"
+)
+
+src_configure() {
+ local myconf=()
+
+ if use smartcard; then
+ myconf+=(
+ --enable-scdaemon
+ $(use_enable usb ccid-driver)
+ )
+ else
+ myconf+=( --disable-scdaemon )
+ fi
+
+ if use elibc_SunOS || use elibc_AIX; then
+ myconf+=( --disable-symcryptrun )
+ else
+ myconf+=( --enable-symcryptrun )
+ fi
+
+ # glib fails and picks up clang's internal stdint.h causing weird errors
+ [[ ${CC} == *clang ]] && \
+ export gl_cv_absolute_stdint_h=/usr/include/stdint.h
+
+ econf \
+ "${myconf[@]}" \
+ $(use_enable bzip2) \
+ $(use_enable ssl gnutls) \
+ $(use_enable nls) \
+ $(use_enable tofu) \
+ $(use_enable wks-server wks-tools) \
+ $(use_with ldap) \
+ $(use_with readline) \
+ --enable-gpg \
+ --enable-gpgsm \
+ --enable-large-secmem \
+ --enable-all-tests \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_compile() {
+ default
+
+ use doc && emake -C doc html
+}
+
+src_test() {
+ #Bug: 638574
+ use tofu && export TESTFLAGS=--parallel
+ default
+}
+
+src_install() {
+ default
+
+ use tools &&
+ dobin \
+ tools/{convert-from-106,gpg-check-pattern} \
+ tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys} \
+ tools/make-dns-cert
+
+ dosym gpg /usr/bin/gpg2
+ dosym gpgv /usr/bin/gpgv2
+ echo ".so man1/gpg.1" > "${ED}"/usr/share/man/man1/gpg2.1 || die
+ echo ".so man1/gpgv.1" > "${ED}"/usr/share/man/man1/gpgv2.1 || die
+
+ dodir /etc/env.d
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg || die
+
+ use doc && dodoc doc/gnupg.html/* doc/*.png
+
+ systemd_douserunit doc/examples/systemd-user/*.{service,socket}
+}