Browse Source

secureserver.pl: make OpenSSL CApath and cert absolute path values

Recent stunnel versions (5.08) seem to have trouble with relative
paths on Windows. This turns the relative paths into absolute ones.
Marc Hoersken 9 years ago
parent
commit
3b7bf29385
1 changed files with 6 additions and 2 deletions
  1. 6 2
      tests/secureserver.pl

+ 6 - 2
tests/secureserver.pl

@@ -33,6 +33,7 @@ BEGIN {
 use strict;
 use warnings;
 use Cwd;
+use Cwd 'abs_path';
 
 use serverhelp qw(
     server_pidfilename
@@ -62,6 +63,7 @@ my $ipvnum = 4;       # default IP version of stunneled server
 my $idnum = 1;        # dafault stunneled server instance number
 my $proto = 'https';  # default secure server protocol
 my $conffile;         # stunnel configuration file
+my $capath;           # certificate chain PEM folder
 my $certfile;         # certificate chain PEM file
 
 #***************************************************************************
@@ -178,7 +180,9 @@ if(!$logfile) {
 
 $conffile = "$path/stunnel.conf";
 
+$capath = abs_path($path);
 $certfile = "$srcdir/". ($stuncert?"certs/$stuncert":"stunnel.pem");
+$certfile = abs_path($certfile);
 
 my $ssltext = uc($proto) ." SSL/TLS:";
 
@@ -254,7 +258,7 @@ if($stunnel_version >= 400) {
     # stunnel configuration file
     if(open(STUNCONF, ">$conffile")) {
         print STUNCONF "
-            CApath = $path
+            CApath = $capath
             cert = $certfile
             debug = $loglevel
             socket = $socketopt";
@@ -285,7 +289,7 @@ if($stunnel_version >= 400) {
     if($verbose) {
         print uc($proto) ." server (stunnel $ver_major.$ver_minor)\n";
         print "cmd: $cmd\n";
-        print "CApath = $path\n";
+        print "CApath = $capath\n";
         print "cert = $certfile\n";
         print "pid = $pidfile\n";
         print "debug = $loglevel\n";