From: Alexandr Nedvedicky Date: Sat, 5 Oct 2024 15:26:24 +0000 (+0200) Subject: Do not confuse TAP::Parser by mixing up stderr with stdout. X-Git-Tag: openssl-3.5.0-alpha1~970 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3d3bb26a13dcc67f99e66de6a44ae9ced117f64b;p=thirdparty%2Fopenssl.git Do not confuse TAP::Parser by mixing up stderr with stdout. This avoids false psotivie failures on FreeBSD-CI which suffers most from this issue. Fixes #23992 Reviewed-by: Matt Caswell Reviewed-by: Tomas Mraz Reviewed-by: Bernd Edlinger (Merged from https://github.com/openssl/openssl/pull/25613) --- diff --git a/util/perl/TLSProxy/Proxy.pm b/util/perl/TLSProxy/Proxy.pm index 48c55f48220..8436861668a 100644 --- a/util/perl/TLSProxy/Proxy.pm +++ b/util/perl/TLSProxy/Proxy.pm @@ -290,8 +290,14 @@ sub start if ($self->debug) { print STDERR "Server command: $execcmd\n"; } + my $sin = undef; + my $sout = undef; + if ("$^O" eq "MSWin32") { + $pid = IPC::Open2::open2($sout, $sin, $execcmd) or die "Failed to $execcmd: $!\n"; + } else { + $pid = IPC::Open3::open3($sin, $sout, undef, $execcmd) or die "Failed to $execcmd: $!\n"; + } - $pid = IPC::Open2::open2(my $sout, my $sin, $execcmd) or die "Failed to $execcmd: $!\n"; $self->{serverpid} = $pid; # Process the output from s_server until we find the ACCEPT line, which