From: Steve Holme <steve_holme@hotmail.com> Date: Sat, 14 Sep 2013 23:34:58 +0000 (+0100) Subject: ftpserver.pl: Added mailbox check to IMAP SELECT handler X-Git-Tag: curl-7_33_0~87 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e9cca79dd1d38f94fdecf7af4b1a8a5512207913;p=curl ftpserver.pl: Added mailbox check to IMAP SELECT handler --- diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl index 3fffcd7a6..c1df82408 100755 --- a/tests/ftpserver.pl +++ b/tests/ftpserver.pl @@ -844,22 +844,27 @@ sub LOGIN_imap { } sub SELECT_imap { - my ($testno) = @_; - fix_imap_params($testno); - - logmsg "SELECT_imap got test $testno\n"; + my ($mailbox) = @_; + fix_imap_params($mailbox); - # Example from RFC 3501, 6.3.1. SELECT Command - sendcontrol "* 172 EXISTS\r\n"; - sendcontrol "* 1 RECENT\r\n"; - sendcontrol "* OK [UNSEEN 12] Message 12 is first unseen\r\n"; - sendcontrol "* OK [UIDVALIDITY 3857529045] UIDs valid\r\n"; - sendcontrol "* OK [UIDNEXT 4392] Predicted next UID\r\n"; - sendcontrol "* FLAGS (\\Answered \\Flagged \\Deleted \\Seen \\Draft)\r\n"; - sendcontrol "* OK [PERMANENTFLAGS (\\Deleted \\Seen \\*)] Limited\r\n"; - sendcontrol "$cmdid OK [READ-WRITE] SELECT completed\r\n"; + logmsg "SELECT_imap got test $mailbox\n"; - $selected = $testno; + if($mailbox eq "") { + sendcontrol "$cmdid BAD Command Argument\r\n"; + } + else { + # Example from RFC 3501, 6.3.1. SELECT Command + sendcontrol "* 172 EXISTS\r\n"; + sendcontrol "* 1 RECENT\r\n"; + sendcontrol "* OK [UNSEEN 12] Message 12 is first unseen\r\n"; + sendcontrol "* OK [UIDVALIDITY 3857529045] UIDs valid\r\n"; + sendcontrol "* OK [UIDNEXT 4392] Predicted next UID\r\n"; + sendcontrol "* FLAGS (\\Answered \\Flagged \\Deleted \\Seen \\Draft)\r\n"; + sendcontrol "* OK [PERMANENTFLAGS (\\Deleted \\Seen \\*)] Limited\r\n"; + sendcontrol "$cmdid OK [READ-WRITE] SELECT completed\r\n"; + + $selected = $mailbox; + } return 0; }