]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
Added precheck that curl supports the 'openssl' engine in test 307.
authorDan Fandrich <dan@coneharvesters.com>
Thu, 18 Jan 2007 18:04:20 +0000 (18:04 +0000)
committerDan Fandrich <dan@coneharvesters.com>
Thu, 18 Jan 2007 18:04:20 +0000 (18:04 +0000)
tests/data/test307
tests/libtest/Makefile.am
tests/libtest/test307.pl [new file with mode: 0755]
tests/runtests.pl

index 0be9dda1b6fd1dd10683e3a062d79d14deef756f..5d626d75d540cc0760108966fd4820b251b3cd38 100644 (file)
@@ -21,7 +21,7 @@ OpenSSL
 https
 </server>
 <precheck>
-echo Cannot determine list of SSL engines
+perl %SRCDIR/libtest/test307.pl %CURL
 </precheck>
 
  <name>
index aadd9c7ed1e4e5673e6c110aeab6e71e6b95d467..6fd685854cc22b5d1fb22c52212ff96c62d3fcac 100644 (file)
@@ -35,6 +35,8 @@ INCLUDES = -I$(top_srcdir)/include/curl \
 
 LIBDIR = $(top_builddir)/lib
 
+EXTRA_DIST = test307.pl
+
 # these files are used in every single test program below
 SUPPORTFILES = first.c test.h
 
diff --git a/tests/libtest/test307.pl b/tests/libtest/test307.pl
new file mode 100755 (executable)
index 0000000..7e2687b
--- /dev/null
@@ -0,0 +1,19 @@
+#!/usr/bin/env perl
+# Determine if the given curl executable supports the 'openssl' SSL engine
+if ( $#ARGV != 0 ) 
+{
+       print "Usage: $0 curl-executable\n";
+       exit 3;
+}
+if (!open(CURL, "@ARGV[0] -s --engine list|"))
+{
+       print "Can't get SSL engine list\n";
+       exit 2;
+}
+while( <CURL> )
+{
+    exit 0 if ( /openssl/ );
+}
+close CURL;
+print "openssl engine not supported\n";
+exit 1;
index d43657131aa0ad9a5e5e9d1fd6f397d50356555d..bc36a92cb78e819075019c016867de0a7e65814e 100755 (executable)
@@ -1111,6 +1111,7 @@ sub subVariables {
   $$thing =~ s/%PWD/$pwd/g;
   $$thing =~ s/%TFTPPORT/$TFTPPORT/g;
   $$thing =~ s/%TFTP6PORT/$TFTP6PORT/g;
+  $$thing =~ s/%CURL/$CURL/g;
 
   # The purpose of FTPTIME2 and FTPTIME3 is to provide times that can be
   # used for time-out tests and that whould work on most hosts as these
@@ -1226,6 +1227,7 @@ sub singletest {
         my @precheck = getpart("client", "precheck");
         $cmd = $precheck[0];
         chomp $cmd;
+        subVariables \$cmd;
         if($cmd) {
             my @o = `$cmd 2>/dev/null`;
             if($o[0]) {