From 6f8585de7ea586a36cbc06530346f855540d25e0 Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Mon, 28 Dec 2020 14:08:38 -0500 Subject: mail-filter/opendkim: new revision to disable parallel tests. The test suite for OpenDKIM currently relies on two "setup" and "cleanup" tests being run at the beginning/end of the test suite, respectively. But when the test suite is run in parallel, that's not always guaranteed. This new revision runs the test suite sequentially to avoid the problem, which has been reported upstream. The credit for this goes to klondike, who was able to determine the root cause of the heisenbug. In the process, a minor security vulnerability (insecure /tmp path) was also reported upstream and fixed in the ebuild. Closes: https://bugs.gentoo.org/745969 Package-Manager: Portage-3.0.9, Repoman-3.0.2 Signed-off-by: Michael Orlitzky --- mail-filter/opendkim/opendkim-2.10.3-r25.ebuild | 236 ---------------------- mail-filter/opendkim/opendkim-2.10.3-r26.ebuild | 251 ++++++++++++++++++++++++ 2 files changed, 251 insertions(+), 236 deletions(-) delete mode 100644 mail-filter/opendkim/opendkim-2.10.3-r25.ebuild create mode 100644 mail-filter/opendkim/opendkim-2.10.3-r26.ebuild (limited to 'mail-filter/opendkim') diff --git a/mail-filter/opendkim/opendkim-2.10.3-r25.ebuild b/mail-filter/opendkim/opendkim-2.10.3-r25.ebuild deleted file mode 100644 index b105074a89ac..000000000000 --- a/mail-filter/opendkim/opendkim-2.10.3-r25.ebuild +++ /dev/null @@ -1,236 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -LUA_COMPAT=( lua5-1 lua5-2 ) - -inherit autotools db-use eutils systemd tmpfiles lua-single - -DESCRIPTION="A milter providing DKIM signing and verification" -HOMEPAGE="http://opendkim.org/" -SRC_URI="https://downloads.sourceforge.net/project/opendkim/${P}.tar.gz" - -# The GPL-2 is for the init script, bug 425960. -LICENSE="BSD GPL-2 Sendmail-Open-Source" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86" -IUSE="berkdb ldap libressl lmdb lua memcached opendbx poll sasl selinux +ssl static-libs stats querycache test unbound" - -BDEPEND="acct-user/opendkim - test? ( ${LUA_DEPS} )" - -COMMON_DEPEND="|| ( mail-filter/libmilter mail-mta/sendmail ) - dev-libs/libbsd - sys-apps/grep - ssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - berkdb? ( >=sys-libs/db-3.2:* ) - opendbx? ( >=dev-db/opendbx-1.4.0 ) - lua? ( ${LUA_DEPS} ) - ldap? ( net-nds/openldap ) - lmdb? ( dev-db/lmdb ) - memcached? ( dev-libs/libmemcached ) - sasl? ( dev-libs/cyrus-sasl ) - unbound? ( >=net-dns/unbound-1.4.1:= net-dns/dnssec-root ) - !unbound? ( net-libs/ldns )" - -DEPEND="${COMMON_DEPEND}" - -RDEPEND="${COMMON_DEPEND} - acct-user/opendkim - sys-process/psmisc - selinux? ( sec-policy/selinux-dkim )" - -REQUIRED_USE="sasl? ( ldap ) - stats? ( opendbx ) - querycache? ( berkdb ) - lua? ( ${LUA_REQUIRED_USE} ) - test? ( ${LUA_REQUIRED_USE} )" -RESTRICT="!test? ( test )" - -PATCHES=( - "${FILESDIR}/${P}-openrc.patch" - "${FILESDIR}/${P}-openssl-1.1.1.patch.r2" - "${FILESDIR}/${P}-lua-pkgconfig.patch" - "${FILESDIR}/${P}-lua-pkgconfig-pt2.patch" - "${FILESDIR}/${P}-define-P-macro-in-libvbr.patch" - "${FILESDIR}/${P}-fix-libmilter-search.patch" -) - -src_prepare() { - default - sed -e 's:/var/db/dkim:/var/lib/opendkim:g' \ - -i opendkim/opendkim.conf.sample opendkim/opendkim.conf.simple.in \ - || die - sed -e 's:dist_doc_DATA:dist_html_DATA:' \ - -i libopendkim/docs/Makefile.am \ - || die - eautoreconf -} - -src_configure() { - local myconf=() - if use berkdb ; then - myconf+=( --with-db-incdir=$(db_includedir) ) - fi - if use unbound; then - myconf+=( --with-unbound ) - else - myconf+=( --with-ldns ) - fi - if use ldap; then - myconf+=( $(use_with sasl) ) - fi - - # We install the our configuration filed under e.g. /etc/opendkim, - # so the next line is necessary to point the daemon and all of its - # documentation to the right location by default. - myconf+=( --sysconfdir="${EPREFIX}/etc/${PN}" ) - - econf \ - $(use_with berkdb db) \ - $(use_with opendbx odbx) \ - $(use_with lua) \ - $(use_enable lua rbl) \ - $(use_with ldap openldap) \ - $(use_with lmdb) \ - $(use_enable poll) \ - $(use_enable querycache query_cache) \ - $(use_enable static-libs static) \ - $(use_enable stats) \ - $(use_with memcached libmemcached) \ - "${myconf[@]}" \ - --enable-filter \ - --with-milter \ - --enable-atps \ - --enable-identity_header \ - --enable-rate_limit \ - --enable-resign \ - --enable-replace_rules \ - --enable-default_sender \ - --enable-sender_macro \ - --enable-vbr \ - --disable-live-testing \ - --with-test-socket="${T}/opendkim.sock" -} - -src_compile() { - emake runstatedir=/run -} - -src_install() { - default - find "${D}" -name '*.la' -type f -delete || die - - dosbin stats/opendkim-reportstats - - newinitd "${S}/contrib/OpenRC/opendkim.openrc" "${PN}" - systemd_newtmpfilesd "${S}/contrib/systemd/opendkim.tmpfiles" "${PN}.conf" - systemd_newunit "contrib/systemd/opendkim.service" "${PN}.service" - - dodir /etc/opendkim - keepdir /var/lib/opendkim - - # The OpenDKIM data (particularly, your keys) should be read-only to - # the UserID that the daemon runs as. - fowners root:opendkim /var/lib/opendkim - fperms 750 /var/lib/opendkim - - # Tweak the "simple" example configuration a bit before installing - # it unconditionally. - local cf="${T}/opendkim.conf" - # Some MTAs are known to break DKIM signatures with "simple" - # canonicalization [1], so we choose the "relaxed" policy - # over OpenDKIM's current default settings. - # [1] https://wordtothewise.com/2016/12/dkim-canonicalization-or-why-microsoft-breaks-your-mail/ - sed -E -e 's:^(Canonicalization)[[:space:]]+.*:\1\trelaxed/relaxed:' \ - "${S}/opendkim/opendkim.conf.simple" >"${cf}" || die - cat >>"${cf}" <"${cf}" || die + cat >>"${cf}" <