Commit ffc6d062 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

now check for and use valgrind, inserted and modified the check for stunnel

and we no longer use the stunnel.pm
parent 757a7d08
Loading
Loading
Loading
Loading
+27 −2
Original line number Diff line number Diff line
@@ -57,7 +57,8 @@ my $memdump="memdump";
# the path to the script that analyzes the memory debug output file:
my $memanalyze="./memanalyze.pl";

my $checkstunnel = &checkstunnel;
my $checkstunnel = checkcmd("stunnel");
my $checkvalgrind = checkcmd("valgrind");

my $ssl_version; # set if libcurl is built with SSL support

@@ -65,6 +66,12 @@ my $skipped=0; # number of tests skipped; reported in main loop
my %skipped;    # skipped{reason}=counter, reasons for skip
my @teststat;   # teststat[testnum]=reason, reasons for skip

if($checkvalgrind) {
    # we have found valgrind on the host, use it

    # perhaps we should verify that valgrind works before we actually use it?
    $CURL="valgrind --leak-check=yes --logfile-fd=3 -q $CURL";
}
#######################################################################
# variables the command line options may set
#
@@ -105,6 +112,20 @@ foreach $protocol (('ftp', 'http', 'ftps', 'https', 'gopher', 'no')) {
    $ENV{uc($proxy)}=undef;
}

#######################################################################
# Check for a command in the PATH.
#
sub checkcmd {
    my ($cmd)=@_;
    my @paths=("/usr/sbin", "/usr/local/sbin", "/sbin", "/usr/bin",
               "/usr/local/bin", split(":", $ENV{'PATH'}));
    for(@paths) {
        if( -x "$_/$cmd") {
            return "$_/$cmd";
        }
    }
}

#######################################################################
# Return the pid of the server as found in the given pid file
#
@@ -578,7 +599,7 @@ sub checkcurl {

    my $curl;
    my $libcurl;
    my @version=`$CURL -V`;
    my @version=`$CURL -V 2>/dev/null`;
    for(@version) {
        chomp;

@@ -635,6 +656,7 @@ sub checkcurl {
    printf("* Server SSL:       %s\n", $checkstunnel?"ON":"OFF");
    printf("* libcurl SSL:      %s\n", $ssl_version?"ON":"OFF");
    printf("* libcurl debug:    %s\n", $curl_debug?"ON":"OFF");
    printf("* valgrind:         %s\n", $checkvalgrind?"ON":"OFF");
    print "***************************************** \n";
}

@@ -881,6 +903,9 @@ sub singletest {

        $cmdargs .= " <$stdinfile";
    }
    if($checkvalgrind) {
        $cmdargs .= " 3>log/valgrind$testnum";
    }
    my $CMDLINE;

    if(!$tool) {