From 477f3f13b9a398476d3deacd835d3dd2f41b3540 Mon Sep 17 00:00:00 2001 From: Jory Pratt Date: Thu, 31 Oct 2019 09:46:07 -0500 Subject: x11-plugins/enigmail: Fix incorrect newline treat of PGP/MIME Closes: https://bugs.gentoo.org/698926 Package-Manager: Portage-2.3.78, Repoman-2.3.17 Signed-off-by: Jory Pratt --- x11-plugins/enigmail/enigmail-2.1.2-r1.ebuild | 85 ++++++++++++++++++++++ .../enigmail/files/enigmail-2.1.2-mimeverify.patch | 44 +++++++++++ 2 files changed, 129 insertions(+) create mode 100644 x11-plugins/enigmail/enigmail-2.1.2-r1.ebuild create mode 100644 x11-plugins/enigmail/files/enigmail-2.1.2-mimeverify.patch (limited to 'x11-plugins') diff --git a/x11-plugins/enigmail/enigmail-2.1.2-r1.ebuild b/x11-plugins/enigmail/enigmail-2.1.2-r1.ebuild new file mode 100644 index 000000000000..596a08529286 --- /dev/null +++ b/x11-plugins/enigmail/enigmail-2.1.2-r1.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python2_7 ) + +inherit python-any-r1 + +DESCRIPTION="Mozilla extension to provide GPG support in mail clients" +HOMEPAGE="https://www.enigmail.net/" + +SLOT="0" +LICENSE="MPL-2.0 GPL-3" +IUSE="" +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://git.code.sf.net/p/enigmail/source" + S="${WORKDIR}/${P}" +else + if [[ ${PV} = *_beta* ]] ; then + SRC_URI="https://www.enigmail.net/download/beta/${P/_/-}.tar.gz" + else + SRC_URI="https://www.enigmail.net/download/source/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" + fi + S="${WORKDIR}/${PN}" +fi + +RDEPEND=" + ( >=app-crypt/gnupg-2.0 + || ( + app-crypt/pinentry[gtk(-)] + app-crypt/pinentry[qt5(-)] + ) + ) + ! +Date: Sun, 29 Sep 2019 22:07:52 +0200 +Subject: [PATCH] mimeVerify: fix incorrect newline treatment in PGP/MIME + messages + +RFC 3156 specifies: + +Upon receipt of a signed message, an application MUST: + +(1) Convert line endings to the canonical sequence before + the signature can be verified. This is necessary since the + local MTA may have converted to a local end of line convention. + +The code in this commit was originally added in +ab1b9a2d1c023c5bdf9c058681b93da99ee95465 to fix SourceForge bugs #209 +and #4, but was later accidentally removed during refactoring. This +commit restores the previous state so that signed messages created by +MUAs such as alot or NeoMutt can be verified successfully. + +Fixes: c36bef32a70ee9f2eac1b839cb8644e2fddb32ca +Closes: #1020 (SourceForge) +--- + package/mimeVerify.jsm | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/package/mimeVerify.jsm b/package/mimeVerify.jsm +index 7cc1b228..a6e01d86 100644 +--- a/package/mimeVerify.jsm ++++ b/package/mimeVerify.jsm +@@ -497,6 +497,10 @@ MimeVerify.prototype = { + mimeSignatureFile: sigFileName + }; + const cApi = EnigmailCryptoAPI(); ++ ++ // ensure all lines end with CRLF as specified in RFC 3156, section 5 ++ this.signedData = this.signedData.replace(/\r\n/g, "\n").replace(/\n/g, "\r\n"); ++ + this.returnStatus = cApi.sync(cApi.verifyMime(this.signedData, options)); + this.exitCode = this.returnStatus.exitCode; + +-- +2.22.0 + -- cgit v1.2.3-65-gdbad