From 81408d21110d17e072beb7da7b31783ce03ba9f3 Mon Sep 17 00:00:00 2001 From: Jiri Hruska Date: Wed, 6 Mar 2013 22:16:19 +0100 Subject: [PATCH] imap: Fixed ftpserver.pl to allow verification even through LIST command Commit 198012ee inadvertently broke LIST_imap(). --- tests/ftpserver.pl | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl index 1be686196..b4076f4be 100755 --- a/tests/ftpserver.pl +++ b/tests/ftpserver.pl @@ -940,20 +940,32 @@ sub STORE_imap { sub LIST_imap { my ($args) = @_; my ($reference, $mailbox) = split(/ /, $args, 2); + my @data; logmsg "LIST_imap got $args\n"; - my $testno = $reference; - $testno =~ s/^([^0-9]*)//; - my $testpart = ""; - if ($testno > 10000) { - $testpart = $testno % 10000; - $testno = int($testno / 10000); + if ($reference eq '"verifiedserver"') { + # this is the secret command that verifies that this actually is + # the curl test server + @data = ("* LIST () \"/\" \"WE ROOLZ: $$\"\r\n"); + if($verbose) { + print STDERR "FTPD: We returned proof we are the test server\n"; + } + logmsg "return proof we are we\n"; } + else { + my $testno = $reference; + $testno =~ s/^([^0-9]*)//; + my $testpart = ""; + if ($testno > 10000) { + $testpart = $testno % 10000; + $testno = int($testno / 10000); + } - loadtest("$srcdir/data/test$testno"); + loadtest("$srcdir/data/test$testno"); - my @data = getpart("reply", "data$testpart"); + @data = getpart("reply", "data$testpart"); + } for my $d (@data) { sendcontrol $d;