From: Steve Holme Date: Wed, 28 Aug 2013 17:56:19 +0000 (+0100) Subject: ftpserver.pl: Added SELECT check to IMAP SEARCH command X-Git-Tag: curl-7_33_0~201 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4ae7b7ea691497;p=curl ftpserver.pl: Added SELECT check to IMAP SEARCH command --- diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl index d5ae6bbf6..2732b1696 100755 --- a/tests/ftpserver.pl +++ b/tests/ftpserver.pl @@ -1034,27 +1034,32 @@ sub STATUS_imap { sub SEARCH_imap { my ($what) = @_; - my $testno = $selected; fix_imap_params($what); - logmsg "SEARCH_imap got test $testno\n"; + if ($selected eq "") { + sendcontrol "$cmdid BAD Command received in Invalid state\r\n"; + else { + my $testno = $selected; - $testno =~ s/^([^0-9]*)//; - my $testpart = ""; - if ($testno > 10000) { - $testpart = $testno % 10000; - $testno = int($testno / 10000); - } + logmsg "SEARCH_imap got test $testno\n"; - loadtest("$srcdir/data/test$testno"); + $testno =~ s/^([^0-9]*)//; + my $testpart = ""; + if ($testno > 10000) { + $testpart = $testno % 10000; + $testno = int($testno / 10000); + } - my @data = getpart("reply", "data$testpart"); + loadtest("$srcdir/data/test$testno"); - for my $d (@data) { - sendcontrol $d; - } + my @data = getpart("reply", "data$testpart"); - sendcontrol "$cmdid OK SEARCH completed\r\n"; + for my $d (@data) { + sendcontrol $d; + } + + sendcontrol "$cmdid OK SEARCH completed\r\n"; + } return 0; }