aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2009-05-04 10:30:23 +0000
committerYang Tse <yangsita@gmail.com>2009-05-04 10:30:23 +0000
commitff3e574187d8a4b7968daedf23741f80c3b714e0 (patch)
treec763ad89901466e95695caf4c7fca5aa3eb9dff3 /tests
parent4422f80ae7e8fbc80ea3f6f4eff3c7d7950dc82f (diff)
David McCreedy's patch to fix test suite harness to allow test FTP server and client on different machines, providing FTP client address when running the FTP test server.
Diffstat (limited to 'tests')
-rw-r--r--tests/ftpserver.pl10
-rwxr-xr-xtests/runtests.pl8
2 files changed, 14 insertions, 4 deletions
diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl
index f2acd72d8..63826adcc 100644
--- a/tests/ftpserver.pl
+++ b/tests/ftpserver.pl
@@ -83,6 +83,7 @@ my $ext; # append to log/pid file names
my $grok_eprt;
my $port = 8921; # just a default
my $listenaddr = "127.0.0.1"; # just a default
+my $client;
my $pidfile = ".ftpd.pid"; # a default, use --pidfile
my $SERVERLOGS_LOCK="log/serverlogs.lock"; # server logs advisor read lock
@@ -114,7 +115,12 @@ do {
}
elsif($ARGV[0] eq "--addr") {
$listenaddr = $ARGV[1];
- $listenaddr =~ s/^\[(.*)\]$/\1/;
+ $listenaddr =~ s/^\[(.*)\]$/\1/;
+ shift @ARGV;
+ }
+ elsif($ARGV[0] eq "--client") {
+ $client = $ARGV[1];
+ $client =~ s/^\[(.*)\]$/\1/;
shift @ARGV;
}
} while(shift @ARGV);
@@ -705,7 +711,7 @@ sub PORT_command {
# We fire up a new sockfilt to do the data transfer for us.
# FIX: make it use IPv6 if need be
- my $filtcmd="./server/sockfilt --connect $port --addr $addr --logfile log/sockdata$ftpdnum$ext.log --pidfile .sockdata$ftpdnum$ext.pid $ipv6";
+ my $filtcmd="./server/sockfilt --connect $port --addr $client --logfile log/sockdata$ftpdnum$ext.log --pidfile .sockdata$ftpdnum$ext.pid $ipv6";
$slavepid = open2(\*DREAD, \*DWRITE, $filtcmd);
print STDERR "$filtcmd\n" if($verbose);
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 467b70670..47dfd0e28 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -943,6 +943,8 @@ sub runftpserver {
my $ip=$HOSTIP;
my $nameext;
my $cmd;
+ my $addr;
+ my $addr_client;
if($ipv6) {
# if IPv6, use a different setup
@@ -966,18 +968,20 @@ sub runftpserver {
# start our server:
my $flag=$debugprotocol?"-v ":"";
$flag .= "-s \"$srcdir\" ";
- my $addr;
if($id) {
$flag .="--id $id ";
}
if($ipv6) {
$flag .="--ipv6 ";
$addr = $HOST6IP;
+ $addr_client = $CLIENT6IP;
} else {
$addr = $HOSTIP;
+ $addr_client = $CLIENTIP;
}
- $cmd="$perl $srcdir/ftpserver.pl --pidfile $pidfile $flag --port $port --addr \"$addr\"";
+ $cmd="$perl $srcdir/ftpserver.pl --pidfile $pidfile $flag --port $port --addr \"$addr\" --client \"$addr_client\"";
+
my ($ftppid, $pid2) = startnew($cmd, $pidfile, 15, 0);
if($ftppid <= 0 || !kill(0, $ftppid)) {