diff options
author | Daniel Stenberg <daniel@haxx.se> | 2005-04-28 21:04:08 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2005-04-28 21:04:08 +0000 |
commit | 913c370c2504fca720bc3b32bd7cd373499c31e0 (patch) | |
tree | 7b5945a00203acbcd21177d29b8e88ae11c697b9 | |
parent | e5472bbd2177b1f95917199284d311a633eda35c (diff) |
moved in functions from runtests.pl to enable the ftpserver to use the
killslaves function
-rw-r--r-- | tests/ftp.pm | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/tests/ftp.pm b/tests/ftp.pm index 078dc61f2..25d7df745 100644 --- a/tests/ftp.pm +++ b/tests/ftp.pm @@ -1,4 +1,38 @@ -# make sure no leftovers are still running +####################################################################### +# Return the pid of the server as found in the given pid file +# +sub serverpid { + my $PIDFILE = $_[0]; + open(PFILE, "<$PIDFILE"); + my $PID=0+<PFILE>; + close(PFILE); + return $PID; +} + +####################################################################### +# Check the given test server if it is still alive. +# +sub checkserver { + my ($pidfile)=@_; + my $pid=0; + + # check for pidfile + if ( -f $pidfile ) { + $pid=serverpid($pidfile); + if ($pid ne "" && kill(0, $pid)) { + return $pid; + } + else { + return -$pid; # negative means dead process + } + } + return 0; +} + +############################################################################# +# Make sure no FTP leftovers are still running. Kill all slave processes. +# This uses pidfiles since it might be used by other processes. +# sub ftpkillslaves { my ($versbose) = @_; for $ext (("", "ipv6")) { |