]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
make sure the ipv6 http server gets its pid stored in a separate file
authorDaniel Stenberg <daniel@haxx.se>
Tue, 14 Dec 2004 21:52:16 +0000 (21:52 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 14 Dec 2004 21:52:16 +0000 (21:52 +0000)
tests/httpserver.pl
tests/runtests.pl
tests/server/sws.c

index bdd21f9a845b03919bca39e8b3d2104e5de5922c..675aed5cf1341e67430d50244820d6e12e4f425e 100755 (executable)
@@ -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");
index f66fdeef044308f920305d3da0ea6d254b2ac1c2..1be984b58ab11f516c17d5b8c90002976a83eb15 100755 (executable)
@@ -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";
index f690ab3e11c6eb5e3a8547078cfd1fa790a1504c..f53da905412d1ec31541311daf97f7bd0ff7b8e8 100644 (file)
@@ -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);