diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2019-10-25 20:06:25 +0200 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2019-10-25 20:06:50 +0200 |
commit | f4bc13f99c7d2cda324f742c6f49134ae8e9f1a3 (patch) | |
tree | 1c4431ee6bcb25069523fb2c679d35369c0a8777 /dev-perl | |
parent | app-misc/qcma: new package (diff) | |
download | gentoo-f4bc13f99c7d2cda324f742c6f49134ae8e9f1a3.tar.gz gentoo-f4bc13f99c7d2cda324f742c6f49134ae8e9f1a3.tar.bz2 gentoo-f4bc13f99c7d2cda324f742c6f49134ae8e9f1a3.zip |
dev-perl/GnuPG-Interface: Fix tests with newer gnupg, patches by Niko Tyni
Closes: https://bugs.gentoo.org/661716
Package-Manager: Portage-2.3.77, Repoman-2.3.17
Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>
Diffstat (limited to 'dev-perl')
3 files changed, 121 insertions, 1 deletions
diff --git a/dev-perl/GnuPG-Interface/GnuPG-Interface-0.520.0-r3.ebuild b/dev-perl/GnuPG-Interface/GnuPG-Interface-0.520.0-r3.ebuild index 3145257e0c2e..9ef5aecdf16f 100644 --- a/dev-perl/GnuPG-Interface/GnuPG-Interface-0.520.0-r3.ebuild +++ b/dev-perl/GnuPG-Interface/GnuPG-Interface-0.520.0-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -45,6 +45,8 @@ PATCHES=( "${FILESDIR}/${P}"-0017-Kill-any-GnuPG-agent-before-and-after-the-test-suite.patch "${FILESDIR}/${P}"-0018-Use-a-short-temporary-homedir-during-the-test-suite.patch "${FILESDIR}/${P}"-0019-Make-things-work-with-gpg1-assuming-plain-gpg-is-mod.patch + "${FILESDIR}/${P}"-0030-gpg-2.2.6.patch + "${FILESDIR}/${P}"-0031-gpg-2.2.8.patch ) src_prepare() { diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0030-gpg-2.2.6.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0030-gpg-2.2.6.patch new file mode 100644 index 000000000000..1268beeb0a21 --- /dev/null +++ b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0030-gpg-2.2.6.patch @@ -0,0 +1,54 @@ +From 7c85ac40660861e7507c43d043323c3f1b83921b Mon Sep 17 00:00:00 2001 +From: Niko Tyni <ntyni@debian.org> +Date: Wed, 20 Jun 2018 21:57:50 +0300 +Subject: [PATCH] Fix test suite for GnuPG >= 2.2.6 compatibility + +GnuPG 2.2.6 (commit 1a5d95e7319e7e6f) started marking signatures +with an expired key with '?', as seen with for instance + + GNUPGHOME=./test/gnupghome/ gpg --list-sigs 0xF950DA9C + +Adapt the test suite accordingly. + +See https://dev.gnupg.org/rG1a5d95e7319e7e6f0dd11064a26cbbc371b05214 + +Bug-Debian: https://bugs.debian.org/900051 +--- + t/get_public_keys.t | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/t/get_public_keys.t b/t/get_public_keys.t +index 7893625..ede080a 100644 +--- a/t/get_public_keys.t ++++ b/t/get_public_keys.t +@@ -13,8 +13,12 @@ use MyTestSpecific; + use GnuPG::PrimaryKey; + use GnuPG::SubKey; + ++use version; ++ + my ( $given_key, $handmade_key ); + ++my $gnupg_version = version->parse($gnupg->version); ++ + TEST + { + reset_handles(); +@@ -74,7 +78,7 @@ TEST + date_string => '2000-03-16', + hex_id => '56FFD10A260C4FA3', + sig_class => 0x10, +- validity => '!'), ++ validity => $gnupg_version < version->parse('2.2.6') ? '!' : '?'), + GnuPG::Signature->new( + date => 949813093, + algo_num => 17, +@@ -115,7 +119,7 @@ TEST + date_string => '2000-03-16', + hex_id => '56FFD10A260C4FA3', + sig_class => 0x10, +- validity => '!'), ++ validity => $gnupg_version < version->parse('2.2.6') ? '!' : '?'), + GnuPG::Signature->new( + date => 953179891, + algo_num => 17, diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0031-gpg-2.2.8.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0031-gpg-2.2.8.patch new file mode 100644 index 000000000000..6c025007eef5 --- /dev/null +++ b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0031-gpg-2.2.8.patch @@ -0,0 +1,64 @@ +From b356e7fda15e39e037da1888a24000a96fc85c90 Mon Sep 17 00:00:00 2001 +From: Niko Tyni <ntyni@debian.org> +Date: Sun, 24 Jun 2018 16:19:25 +0300 +Subject: [PATCH] Fix test suite for GnuPG >= 2.2.8 compatibility + +GnuPG 2.2.8 onwards issues a hard failure when decrypting +messages not using the MDC mode. + +Bug-Debian: https://bugs.debian.org/900051 +--- + t/decrypt.t | 19 +++++++++++++++++-- + 1 file changed, 17 insertions(+), 2 deletions(-) + +diff --git a/t/decrypt.t b/t/decrypt.t +index ee41448..2d6740c 100644 +--- a/t/decrypt.t ++++ b/t/decrypt.t +@@ -6,6 +6,7 @@ + use strict; + use English qw( -no_match_vars ); + use File::Compare; ++use version; + + use lib './t'; + use MyTest; +@@ -13,6 +14,8 @@ use MyTestSpecific; + + my $compare; + ++my $gnupg_version = version->parse($gnupg->version); ++ + TEST + { + reset_handles(); +@@ -26,7 +29,13 @@ TEST + close $stdout; + waitpid $pid, 0; + +- return $CHILD_ERROR == 0;; ++ if ($gnupg_version < version->parse('2.2.8')) { ++ return $CHILD_ERROR == 0;; ++ } else { ++ local $/ = undef; ++ my $errstr = <$stderr>; ++ return (($CHILD_ERROR >> 8 == 2) and ($errstr =~ /ignore-mdc-error/)); ++ } + }; + + +@@ -50,7 +59,13 @@ TEST + + waitpid $pid, 0; + +- return $CHILD_ERROR == 0; ++ if ($gnupg_version < version->parse('2.2.8')) { ++ return $CHILD_ERROR == 0; ++ } else { ++ local $/ = undef; ++ my $errstr = <$stderr>; ++ return (($CHILD_ERROR >> 8 == 2) and ($errstr =~ /ignore-mdc-error/)); ++ } + }; + + |