my $logfile; # http server log file
my $connect; # IP to connect to on CONNECT
my $srcdir;
-my $fork;
my $gopher = 0;
my $flags = "";
elsif($ARGV[0] eq '--verbose') {
$verbose = 1;
}
- elsif($ARGV[0] eq '--fork') {
- $fork = $ARGV[0];
- }
else {
print STDERR "\nWarning: httpserver.pl unknown parameter: $ARGV[0]\n";
}
$flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
$flags .= "--gopher " if($gopher);
-$flags .= "--fork " if(defined($fork));
$flags .= "--connect $connect " if($connect);
$flags .= "--ipv$ipvnum --port $port --srcdir \"$srcdir\"";
my $pwd = getcwd(); # current working directory
my $start;
-my $forkserver=0;
my $ftpchecktime=1; # time it took to verify our test FTP server
my $stunnel = checkcmd("stunnel4") || checkcmd("stunnel");
$logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
- $flags .= "--fork " if($forkserver);
$flags .= "--gopher " if($proto eq "gopher");
$flags .= "--connect $HOSTIP " if($alt eq "proxy");
$flags .= "--verbose " if($debugprotocol);
# have the servers display protocol output
$debugprotocol=1;
}
- elsif ($ARGV[0] eq "-f") {
- # run fork-servers, which makes the server fork for all new
- # connections This is NOT what you wanna do without knowing exactly
- # why and for what
- $forkserver=1;
- }
elsif ($ARGV[0] eq "-g") {
# run this test with gdb
$gdbthis=1;
/* include memdebug.h last */
#include "memdebug.h"
-#if !defined(CURL_SWS_FORK_ENABLED) && defined(HAVE_FORK)
-/*
- * The normal sws build for the plain standard curl test suite has no use for
- * fork(), but if you feel wild and crazy and want to setup some more exotic
- * tests. Define this and run...
- */
-#define CURL_SWS_FORK_ENABLED
-#endif
-
#ifdef ENABLE_IPV6
static bool use_ipv6 = FALSE;
#endif
int arg=1;
long pid;
const char *hostport = "127.0.0.1";
-#ifdef CURL_SWS_FORK_ENABLED
- bool use_fork = FALSE;
-#endif
memset(&req, 0, sizeof(req));
while(argc>arg) {
if(!strcmp("--version", argv[arg])) {
printf("sws IPv4%s"
-#ifdef CURL_SWS_FORK_ENABLED
- " FORK"
-#endif
"\n"
,
#ifdef ENABLE_IPV6
#endif
arg++;
}
-#ifdef CURL_SWS_FORK_ENABLED
- else if(!strcmp("--fork", argv[arg])) {
- use_fork=TRUE;
- arg++;
- }
-#endif
else if(!strcmp("--port", argv[arg])) {
arg++;
if(argc>arg) {
" --port [port]\n"
" --srcdir [path]\n"
" --connect [ip4-addr]\n"
- " --gopher\n"
- " --fork");
+ " --gopher");
return 0;
}
}
set_advisor_read_lock(SERVERLOGS_LOCK);
serverlogslocked = 1;
-#ifdef CURL_SWS_FORK_ENABLED
- if(use_fork) {
- /* The fork enabled version just forks off the child and don't care
- about it anymore, so don't assume otherwise. Beware and don't do
- this at home. */
- rc = fork();
- if(-1 == rc) {
- printf("MAJOR ERROR: fork() failed!\n");
- break;
- }
- }
- else
- /* not a fork, just set rc so the following proceeds nicely */
- rc = 0;
- /* 0 is returned to the child */
- if(0 == rc) {
-#endif
logmsg("====> Client connect");
#ifdef TCP_NODELAY
if (req.testno == DOCNUMBER_QUIT)
break;
-#ifdef CURL_SWS_FORK_ENABLED
- }
-#endif
}
sws_cleanup: