aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2004-12-14 21:52:16 +0000
committerDaniel Stenberg <daniel@haxx.se>2004-12-14 21:52:16 +0000
commitdc28a9c0c19c324a0740669e3cc71e80b07a848e (patch)
tree392cc9aa63eaadf8f455d5f391198690cf4206c1
parent1faef62d597c78ea5601ed94814f4a188ec17a86 (diff)
make sure the ipv6 http server gets its pid stored in a separate file
-rwxr-xr-xtests/httpserver.pl7
-rwxr-xr-xtests/runtests.pl3
-rw-r--r--tests/server/sws.c19
3 files changed, 19 insertions, 10 deletions
diff --git a/tests/httpserver.pl b/tests/httpserver.pl
index bdd21f9a8..675aed5cf 100755
--- a/tests/httpserver.pl
+++ b/tests/httpserver.pl
@@ -7,6 +7,7 @@ my $verbose=0; # set to 1 for debugging
my $dir=".";
my $port = 8999; # just a default
my $ipv6;
+my $pid=".http.pid"; # name of the pidfile
do {
if($ARGV[0] eq "-v") {
$verbose=1;
@@ -15,6 +16,10 @@ do {
$dir=$ARGV[1];
shift @ARGV;
}
+ elsif($ARGV[0] eq "-p") {
+ $pid=$ARGV[1];
+ shift @ARGV;
+ }
elsif($ARGV[0] =~ /^(\d+)$/) {
$port = $1;
}
@@ -23,4 +28,4 @@ do {
}
} while(shift @ARGV);
-exec("server/sws $ipv6$port $dir");
+exec("server/sws --pidfile $pid $ipv6$port $dir");
diff --git a/tests/runtests.pl b/tests/runtests.pl
index f66fdeef0..1be984b58 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -346,7 +346,6 @@ sub runhttpserver {
$nameext="-ipv6";
}
-
$pid = checkserver($pidfile);
# verify if our/any server is running on this port
@@ -391,7 +390,7 @@ sub runhttpserver {
if($dir) {
$flag .= "-d \"$dir\" ";
}
- $cmd="$perl $srcdir/httpserver.pl $flag $port $ipv6 &";
+ $cmd="$perl $srcdir/httpserver.pl -p $pidfile $flag $port $ipv6 &";
system($cmd);
if($verbose) {
print "CMD: $cmd\n";
diff --git a/tests/server/sws.c b/tests/server/sws.c
index f690ab3e1..f53da9054 100644
--- a/tests/server/sws.c
+++ b/tests/server/sws.c
@@ -728,11 +728,12 @@ int main(int argc, char *argv[])
int sock, msgsock, flag;
unsigned short port = DEFAULT_PORT;
FILE *pidfile;
+ char *pidname= (char *)".http.pid";
struct httprequest req;
int rc;
+ int arg=1;
- if(argc>1) {
- int arg=1;
+ while(argc>arg) {
if(!strcmp("--version", argv[arg])) {
printf("sws IPv4%s\n",
#ifdef ENABLE_IPV6
@@ -743,20 +744,24 @@ int main(int argc, char *argv[])
);
return 0;
}
- if(!strcmp("--ipv6", argv[arg])) {
+ else if(!strcmp("--pidfile", argv[arg])) {
+ arg++;
+ if(argc>arg)
+ pidname = argv[arg++];
+ }
+ else if(!strcmp("--ipv6", argv[arg])) {
#ifdef ENABLE_IPV6
use_ipv6=TRUE;
#endif
arg++;
}
- if(argc>arg) {
+ else if(argc>arg) {
if(atoi(argv[arg]))
port = (unsigned short)atoi(argv[arg++]);
if(argc>arg)
- path = argv[arg];
-
+ path = argv[arg++];
}
}
@@ -820,7 +825,7 @@ int main(int argc, char *argv[])
exit(1);
}
- pidfile = fopen(".http.pid", "w");
+ pidfile = fopen(pidname, "w");
if(pidfile) {
fprintf(pidfile, "%d\n", (int)getpid());
fclose(pidfile);