]> granicus.if.org Git - curl/commitdiff
improved the check for our own ftp server
authorDaniel Stenberg <daniel@haxx.se>
Mon, 17 May 2004 07:59:10 +0000 (07:59 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 17 May 2004 07:59:10 +0000 (07:59 +0000)
tests/runtests.pl

index b942dac186853c79025469473f33b2ad0ad53014..7a7081630915aab089d3dccdb272f6ee6fefbff8 100755 (executable)
@@ -448,25 +448,25 @@ sub runftpserver {
         print "RUN: Check port $FTPPORT for our own FTP server\n"
             if ($verbose);
 
-
         my $time=time();
         # check if this is our server running on this port:
-        my $data=`$CURL -m4 --silent -i ftp://$HOSTIP:$FTPPORT/verifiedserver 2>/dev/null`;
+        my @data=`$CURL -m4 --silent ftp://$HOSTIP:$FTPPORT/verifiedserver 2>/dev/null`;
+        my $line;
 
         # if this took more than 2 secs, we assume it "hung" on a weird server
         my $took = time()-$time;
-        
-        if ( $data =~ /WE ROOLZ: (\d+)/ ) {
-            # this is our test server with a known pid!
-            $pid = 0+$1;
-        }
-        else {
-            if($data || ($took > 2)) {
-                # this is not a known server
-                print "RUN: Unknown server on our favourite port: $FTPPORT\n";
-                return -1;
+
+        foreach $line (@data) {
+            if ( $line =~ /WE ROOLZ: (\d+)/ ) {
+                # this is our test server with a known pid!
+                $pid = 0+$1;
             }
         }
+        if(!$pid || ($took > 2)) {
+            # this is not a known server
+            print "RUN: Unknown server on our favourite port: $FTPPORT\n";
+            return -1;
+        }
     }
 
     if($pid > 0) {
@@ -490,22 +490,31 @@ sub runftpserver {
     system($cmd);
 
     my $verified;
+    $pid = 0;
     for(1 .. 10) {
         # verify that our server is up and running:
-        my $data=`$CURL --silent -i ftp://$HOSTIP:$FTPPORT/verifiedserver 2>/dev/null`;
-
-        if ( $data =~ /WE ROOLZ: (\d+)/ ) {
-            $pid = 0+$1;
-            $verified = 1;
-            last;
+        my $line;
+        my $cmd="$CURL --silent ftp://$HOSTIP:$FTPPORT/verifiedserver 2>/dev/null";
+        print "$cmd\n" if($verbose);
+        my @data = `$cmd`;
+        foreach $line (@data) {
+            print STDERR "We read: $_";
+            if ( $line =~ /WE ROOLZ: (\d+)/ ) {
+                $pid = 0+$1;
+                $verified = 1;
+                last;
+            }
         }
-        else {
+        if(!$pid) {
             if($verbose) {
                 print STDERR "RUN: Retrying FTP server existence in 3 sec\n";
             }
             sleep(3);
             next;
         }
+        else {
+            last;
+        }
     }
     if(!$verified) {
         warn "RUN: failed to start our FTP server\n";