[openssl-commits] [openssl] OpenSSL_1_1_0-stable update
Richard Levitte
levitte at openssl.org
Fri Jul 7 09:33:36 UTC 2017
The branch OpenSSL_1_1_0-stable has been updated
via 64903a26c5855347738825d7724e76e8a89180f3 (commit)
via e9c17ef92f66e31cee5193f6e1e449d6d197780e (commit)
via 0c5f0fd49d784cad923f1dd9b3237f72d51b267d (commit)
from 02bdd182299736a9acfcb7ae31fe1a1b28445c8c (commit)
- Log -----------------------------------------------------------------
commit 64903a26c5855347738825d7724e76e8a89180f3
Author: Richard Levitte <levitte at openssl.org>
Date: Fri Jul 7 11:11:33 2017 +0200
test/run_tests.pl: Make sure to exit with a code that's understood universally
TAP::Parser::Aggregator::has_errors may return any number, not just 0
and 1. With Perl on VMS, any number from 2 and on is interpreted as a
VMS status, the 3 lower bits are the encoded severity (1 = SUCCESS,
for example), so depending on what has_errors returns, a test failure
might be interpreted as a success. Therefore, it's better to make
sure the exit code is 0 or 1, nothing else (they are special on VMS,
and mean SUCCESS or FAILURE, to match Unix conventions).
Reviewed-by: Tim Hudson <tjh at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3880)
(cherry picked from commit 4549ed12ec3337313c14815438fa9aee88bf1359)
commit e9c17ef92f66e31cee5193f6e1e449d6d197780e
Author: Richard Levitte <levitte at openssl.org>
Date: Fri Jul 7 11:10:05 2017 +0200
test/recipes/90-test_shlibload.t: Make sure to handle library renames
VMS renames our libraries to fit VMS conventions. This must be accounted
for when we want to load them.
Reviewed-by: Tim Hudson <tjh at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3880)
(cherry picked from commit bfa3480f7609351563ac36dddd7c64e97aa6f446)
commit 0c5f0fd49d784cad923f1dd9b3237f72d51b267d
Author: Richard Levitte <levitte at openssl.org>
Date: Fri Jul 7 11:09:19 2017 +0200
VMS: When running a sub-MMS, make sure to give it the main MMS' qualifiers
Reviewed-by: Tim Hudson <tjh at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3880)
(cherry picked from commit 984cf15eb5faac8e328d1ba4a623b1777eb82de1)
-----------------------------------------------------------------------
Summary of changes:
Configurations/descrip.mms.tmpl | 2 +-
test/recipes/90-test_shlibload.t | 6 ++++--
test/run_tests.pl | 11 ++++++++++-
3 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl
index 92898f9..92eda9e 100644
--- a/Configurations/descrip.mms.tmpl
+++ b/Configurations/descrip.mms.tmpl
@@ -89,7 +89,7 @@
sub dependmagic {
my $target = shift;
- return "$target : build_generated\n\t\pipe \$(MMS) depend && \$(MMS) _$target\n_$target";
+ return "$target : build_generated\n\t\pipe \$(MMS) \$(MMSQUALIFIERS) depend && \$(MMS) \$(MMSQUALIFIERS) _$target\n_$target";
}
#use Data::Dumper;
#print STDERR "DEBUG: before:\n", Dumper($unified_info{before});
diff --git a/test/recipes/90-test_shlibload.t b/test/recipes/90-test_shlibload.t
index 9058ba5..aa8d98d 100644
--- a/test/recipes/90-test_shlibload.t
+++ b/test/recipes/90-test_shlibload.t
@@ -22,10 +22,12 @@ plan skip_all => "Test only supported in a shared build" if disabled("shared");
plan tests => 3;
+my $libcrypto_idx = $unified_info{rename}->{libcrypto} // "libcrypto";
+my $libssl_idx = $unified_info{rename}->{libssl} // "libssl";
my $libcrypto =
- $unified_info{sharednames}->{libcrypto}.$target{shared_extension_simple};
+ $unified_info{sharednames}->{$libcrypto_idx}.$target{shared_extension_simple};
my $libssl =
- $unified_info{sharednames}->{libssl}.$target{shared_extension_simple};
+ $unified_info{sharednames}->{$libssl_idx}.$target{shared_extension_simple};
ok(run(test(["shlibloadtest", "-crypto_first", $libcrypto, $libssl])),
"running shlibloadtest -crypto_first");
diff --git a/test/run_tests.pl b/test/run_tests.pl
index 61fdff6..e5bc927 100644
--- a/test/run_tests.pl
+++ b/test/run_tests.pl
@@ -64,7 +64,16 @@ if ($list_mode) {
my $harness = $TAP_Harness->new(\%tapargs);
my $ret = $harness->runtests(sort @tests);
- exit $ret->has_errors if (ref($ret) eq "TAP::Parser::Aggregator");
+ # $ret->has_errors may be any number, not just 0 or 1. On VMS, numbers
+ # from 2 and on are used as is as VMS statuses, which has severity encoded
+ # in the lower 3 bits. 0 and 1, on the other hand, generate SUCCESS and
+ # FAILURE, so for currect reporting on all platforms, we make sure the only
+ # exit codes are 0 and 1. Double-bang is the trick to do so.
+ exit !!$ret->has_errors if (ref($ret) eq "TAP::Parser::Aggregator");
+
+ # If this isn't a TAP::Parser::Aggregator, it's the pre-TAP test harness,
+ # which simply dies at the end if any test failed, so we don't need to
+ # bother with any exit code in that case.
}
More information about the openssl-commits
mailing list