diff options
author | Niko Tyni <ntyni@debian.org> | 2018-06-24 16:19:25 +0300 |
---|---|---|
committer | Niko Tyni <ntyni@debian.org> | 2018-06-29 10:20:20 +0200 |
commit | f2789efe8a4c0a856057d67fbb594195651de2b1 (patch) | |
tree | 9225520d4476aabaa57d407509602d82a4410e9f | |
parent | 7d8d87b92bedd946bf8b4da21b587974eb123294 (diff) |
[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
Bug: https://github.com/bestpractical/gnupg-interface/pull/1
Gbp-Pq: Name 0001-Fix-test-suite-for-GnuPG-2.2.8-compatibility.patch
-rw-r--r-- | t/decrypt.t | 19 |
1 files 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/)); + } }; |