From 6a76d3eb531c83b2f2298f7b6869ba4f2ad6f519 Mon Sep 17 00:00:00 2001 From: Marc Hoersken Date: Fri, 19 Dec 2014 17:17:26 +0100 Subject: secureserver.pl: update Windows detection and fix path conversion --- tests/secureserver.pl | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'tests/secureserver.pl') diff --git a/tests/secureserver.pl b/tests/secureserver.pl index 62ce0a51f..50369ff21 100755 --- a/tests/secureserver.pl +++ b/tests/secureserver.pl @@ -53,6 +53,7 @@ my $ver_major; my $ver_minor; my $fips_support; my $stunnel_version; +my $tstunnel_windows; my $socketopt; my $cmd; @@ -222,6 +223,17 @@ if($stunnel_version < 310) { exit 1; } +#*************************************************************************** +# Find out if we are running on Windows using the tstunnel binary +# +if($stunnel =~ /tstunnel(\.exe)?"?$/) { + $tstunnel_windows = 1; + + # replace Cygwin and MinGW drives within paths + $capath =~ s/^(\/cygdrive)?\/(\w)\//$2\:\//; + $certfile =~ s/^(\/cygdrive)?\/(\w)\//$2\:\//; +} + #*************************************************************************** # Build command to execute for stunnel 3.X versions # @@ -267,7 +279,7 @@ if($stunnel_version >= 400) { print STUNCONF " fips = no"; } - if($stunnel !~ /tstunnel(\.exe)?"?$/) { + if(!$tstunnel_windows) { print STUNCONF " output = $logfile pid = $pidfile @@ -311,7 +323,7 @@ chmod(0600, $certfile) if(-f $certfile); #*************************************************************************** # Run tstunnel on Windows. # -if($stunnel =~ /tstunnel(\.exe)?"?$/) { +if($tstunnel_windows) { # Fake pidfile for tstunnel on Windows. if(open(OUT, ">$pidfile")) { print OUT $$ . "\n"; -- cgit v1.2.3