aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtests/ftpserver.pl79
1 files changed, 41 insertions, 38 deletions
diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl
index 7a52f962f..489c3f141 100755
--- a/tests/ftpserver.pl
+++ b/tests/ftpserver.pl
@@ -816,54 +816,57 @@ sub SELECT_imap {
sub FETCH_imap {
my ($args) = @_;
my ($uid, $how) = split(/ /, $args, 2);
- my @data;
- my $size;
fix_imap_params($uid, $how);
logmsg "FETCH_imap got $args\n";
- if($selected eq "verifiedserver") {
- # this is the secret command that verifies that this actually is
- # the curl test server
- my $response = "WE ROOLZ: $$\r\n";
- if($verbose) {
- print STDERR "FTPD: We returned proof we are the test server\n";
- }
- $data[0] = $response;
- logmsg "return proof we are we\n";
- }
- elsif ($selected eq "") {
+ if ($selected eq "") {
sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
}
else {
- logmsg "retrieve a mail\n";
-
- my $testno = $selected;
- $testno =~ s/^([^0-9]*)//;
- my $testpart = "";
- if ($testno > 10000) {
- $testpart = $testno % 10000;
- $testno = int($testno / 10000);
+ my @data;
+ my $size;
+
+ if($selected eq "verifiedserver") {
+ # this is the secret command that verifies that this actually is
+ # the curl test server
+ my $response = "WE ROOLZ: $$\r\n";
+ if($verbose) {
+ print STDERR "FTPD: We returned proof we are the test server\n";
+ }
+ $data[0] = $response;
+ logmsg "return proof we are we\n";
}
+ else {
+ logmsg "retrieve a mail\n";
+
+ my $testno = $selected;
+ $testno =~ s/^([^0-9]*)//;
+ my $testpart = "";
+ if ($testno > 10000) {
+ $testpart = $testno % 10000;
+ $testno = int($testno / 10000);
+ }
- # send mail content
- loadtest("$srcdir/data/test$testno");
+ # send mail content
+ loadtest("$srcdir/data/test$testno");
- @data = getpart("reply", "data$testpart");
- }
+ @data = getpart("reply", "data$testpart");
+ }
- for (@data) {
- $size += length($_);
- }
+ for (@data) {
+ $size += length($_);
+ }
- sendcontrol "* $uid FETCH ($how {$size}\r\n";
+ sendcontrol "* $uid FETCH ($how {$size}\r\n";
- for my $d (@data) {
- sendcontrol $d;
- }
+ for my $d (@data) {
+ sendcontrol $d;
+ }
- sendcontrol ")\r\n";
- sendcontrol "$cmdid OK FETCH completed\r\n";
+ sendcontrol ")\r\n";
+ sendcontrol "$cmdid OK FETCH completed\r\n";
+ }
return 0;
}
@@ -973,7 +976,10 @@ sub LIST_imap {
logmsg "LIST_imap got $args\n";
- if ($reference eq "verifiedserver") {
+ if ($reference eq "") {
+ sendcontrol "$cmdid BAD Command Argument\r\n";
+ }
+ elsif ($reference eq "verifiedserver") {
# this is the secret command that verifies that this actually is
# the curl test server
sendcontrol "* LIST () \"/\" \"WE ROOLZ: $$\"\r\n";
@@ -985,9 +991,6 @@ sub LIST_imap {
logmsg "return proof we are we\n";
}
- elsif ($reference eq "") {
- sendcontrol "$cmdid BAD Command Argument\r\n";
- }
else {
my $testno = $reference;