what to send back if the client sends a (FTP) MDTM command, set to -1 to
have it return that the file doesn't exist
</mdtm>
-<servercmd>
-special purpose server-command to control its behavior *before* the
-reply is sent:
-
-auth_required - server fails if no auth is provided
-</servercmd>
<postcmd>
special purpose server-command to control its behavior *after* the
reply is sent
</postcmd>
<servercmd>
- equivalent to <cmd> but for HTTP, one specified command is supported:
+Special-commands for the server.
+For FTP, these are supported:
+REPLY
+COUNT
+DELAY
+RETRWEIRDO
+RETRNOSIZE
+NOSAVE
+SLOWDOWN
+
+For HTTP, one specified command is supported:
"auth_required" - if this is set and a POST/PUT is made without auth, the
server will NOT wait for the full request body to get sent
</servercmd>
for(@a) {
print $_;
- select(undef, undef, undef, 0.1);
+ select(undef, undef, undef, 0.02);
}
}
undef %customreply;
$nosave = 0; # default is to save as normal
+ $controldelay = 0; # default is no delaying the responses
open(CUSTOM, "<log/ftpserver.cmd") ||
return 1;
$delayreply{$1}=$2;
logmsg "FTPD: delay reply for $1 with $2 seconds\n";
}
+ elsif($_ =~ /SLOWDOWN/) {
+ $controldelay=1;
+ logmsg "FTPD: send response with 0.1 sec delay between each byte\n";
+ }
elsif($_ =~ /RETRWEIRDO/) {
logmsg "FTPD: instructed to use RETRWEIRDO\n";
$retrweirdo=1;
# if this section exists, we verify upload
my @upload = getpart("verify", "upload");
- # if this section exists, it is FTP server instructions:
- my @ftpservercmd = getpart("server", "instruction");
+ # if this section exists, it might be FTP server instructions:
+ my @ftpservercmd = getpart("reply", "servercmd");
my $CURLOUT="$LOGDIR/curl$testnum.out"; # curl output if not stdout