[openssl] OpenSSL_1_1_1-stable update
Richard Levitte
levitte at openssl.org
Tue Jul 2 18:12:43 UTC 2019
The branch OpenSSL_1_1_1-stable has been updated
via 374cab6390ba005d4a559a3dea2a034af9cb1c09 (commit)
from 42180a229e97b0bcbbe07aeadb3dcb7dc31cfdc4 (commit)
- Log -----------------------------------------------------------------
commit 374cab6390ba005d4a559a3dea2a034af9cb1c09
Author: Martin Peylo <martin.peylo at nokia.com>
Date: Wed Aug 22 12:48:22 2018 +0300
Adding Test.pm with workaround for Perl abs2rel bug
If SRCTOP != BLDTOP, and SRCTOP is given in relative form, e.g.
"./config ../openssl", then a bug in Perl's abs2rel may trigger that directory-
rewriting in __cwd results in wrong entries in %directories under certain
circumstances, e.g. when a test executes run(app(["openssl"]) after indir.
There should not be any need to go to a higher directory from BLDDIR or SRCDIR,
so it should be OK to use them in their absolute form, also resolving all
possible symlinks, right from the start.
Following the File::Spec::Functions bug description (reported to perl.org):
When abs2rel gets a path argument with ..s that are crossing over the ..s
trailing the base argument, the result is wrong.
Example
PATH: /home/goal/test/..
BASE: /home/goal/test/../../base
Good result: ../goal
Bad result: ../..
Bug verified with File::Spec versions
- 3.6301
- 3.74 (latest)
Reviewed-by: Matt Caswell <matt at openssl.org>
Reviewed-by: Richard Levitte <levitte at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/7031)
(cherry picked from commit 7a2027240e1d01f7f5b209998d1de36af221b34b)
-----------------------------------------------------------------------
Summary of changes:
util/perl/OpenSSL/Test.pm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/util/perl/OpenSSL/Test.pm b/util/perl/OpenSSL/Test.pm
index 9564b26..43c4344 100644
--- a/util/perl/OpenSSL/Test.pm
+++ b/util/perl/OpenSSL/Test.pm
@@ -65,6 +65,7 @@ use File::Spec::Functions qw/file_name_is_absolute curdir canonpath splitdir
rel2abs/;
use File::Path 2.00 qw/rmtree mkpath/;
use File::Basename;
+use Cwd qw/abs_path/;
my $level = 0;
@@ -869,8 +870,8 @@ failures will result in a C<BAIL_OUT> at the end of its run.
sub __env {
(my $recipe_datadir = basename($0)) =~ s/\.t$/_data/i;
- $directories{SRCTOP} = $ENV{SRCTOP} || $ENV{TOP};
- $directories{BLDTOP} = $ENV{BLDTOP} || $ENV{TOP};
+ $directories{SRCTOP} = abs_path($ENV{SRCTOP} || $ENV{TOP});
+ $directories{BLDTOP} = abs_path($ENV{BLDTOP} || $ENV{TOP});
$directories{BLDAPPS} = $ENV{BIN_D} || __bldtop_dir("apps");
$directories{SRCAPPS} = __srctop_dir("apps");
$directories{BLDFUZZ} = __bldtop_dir("fuzz");
More information about the openssl-commits
mailing list