[openssl] master update

tmraz at fedoraproject.org tmraz at fedoraproject.org
Mon Oct 12 09:39:47 UTC 2020


The branch master has been updated
       via  c804f2965ef6908dc1f30447d4547192fc3ba974 (commit)
      from  8ebd88950d9d0a94037e4962daa6e80a464bea06 (commit)


- Log -----------------------------------------------------------------
commit c804f2965ef6908dc1f30447d4547192fc3ba974
Author: Rainer Jung <rainer.jung at kippdata.de>
Date:   Tue Jul 21 11:32:02 2020 +0200

    Make TAP::Harness and TAP::Parser optional.
    
    In OpenSSL 1.1.1 the script run_tests.pl has an effectiver
    workaround to fall back to Test::Harness, if TAP::Harness
    is not available. That code has substantially changed,
    but it seems it should still fall back but doesn't.
    
    Observed on SuSE Linux Enterprise Server 11 (SLES11).
    
    Error messages:
    
    Can't locate TAP/Parser.pm in @inc (@inc contains: /path/to/bld/openssl300/test/../util/perl /path/to/local/perl/lib/perl5 /usr/lib/perl5/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/5.10.0 /usr/lib/perl5/site_perl/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.10.0 /usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl .) at /path/to/local/perl/lib/perl5/parent.pm line 20.
    BEGIN failed--compilation aborted at /path/to/bld/openssl300/test/run_tests.pl line 131.
    
    and
    
    Can't locate TAP/Harness.pm in @inc (@inc contains: /path/to/bld/openssl300/test/../util/perl /path/to/local/perl/lib/perl5 /usr/lib/perl5/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/5.10.0 /usr/lib/perl5/site_perl/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.10.0 /usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl .) at /path/to/local/perl/lib/perl5/parent.pm line 20.
    BEGIN failed--compilation aborted at /path/to/bld/openssl300/test/run_tests.pl line 215.
    
    Concerning the fix: the docs for parent.pm show, that without
    the "-norequire" it puts the require statement in a BEGIN block
    which probably runs before the eval, to the loading is no
    longer encapsulated by the eval. Without the additional require
    line, the loading doesn't happen at all, so the availability
    testing fails. Combining the "-norequire" and an explicit
    "require" worked for me.
    
    Tested on the original problem platform SLES 11, but also on
    SLES 12 and 15, RHEL 6, 7 and 8 plus Solaris 10 Sparc.
    
    Reviewed-by: Paul Dale <paul.dale at oracle.com>
    Reviewed-by: Tomas Mraz <tmraz at fedoraproject.org>
    (Merged from https://github.com/openssl/openssl/pull/12500)

-----------------------------------------------------------------------

Summary of changes:
 test/run_tests.pl | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/test/run_tests.pl b/test/run_tests.pl
index 14e195b468..8a9e156a54 100644
--- a/test/run_tests.pl
+++ b/test/run_tests.pl
@@ -148,7 +148,8 @@ my $eres;
 
 $eres = eval {
     package TAP::Parser::OpenSSL;
-    use parent 'TAP::Parser';
+    use parent -norequire, 'TAP::Parser';
+    require TAP::Parser;
 
     sub new {
         my $class = shift;
@@ -231,7 +232,8 @@ $eres = eval {
     }
 
     package TAP::Harness::OpenSSL;
-    use parent 'TAP::Harness';
+    use parent -norequire, 'TAP::Harness';
+    require TAP::Harness;
 
     package main;
 


More information about the openssl-commits mailing list