diff options
-rwxr-xr-x | tests/ftpserver.pl | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl index 0b4e1a64a..0b495c67d 100755 --- a/tests/ftpserver.pl +++ b/tests/ftpserver.pl @@ -564,6 +564,7 @@ sub protocolsetup { 'QUIT' => \&QUIT_pop3, 'RETR' => \&RETR_pop3, 'STAT' => \&STAT_pop3, + 'UIDL' => \&UIDL_pop3, ); %displaytext = ( 'USER' => '+OK We are happy you popped in!', @@ -1377,6 +1378,28 @@ sub NOOP_pop3 { return 0; } +sub UIDL_pop3 { + # This is a built-in fake-message UID list + my @data = ( + "1 1\r\n", + "2 2\r\n", + "3 4\r\n", # Note that UID 3 is a simulated "deleted" message + ); + + logmsg "retrieve a message UID list\n"; + + sendcontrol "+OK Listing starts\r\n"; + + for my $d (@data) { + sendcontrol $d; + } + + # End with the magic 3-byte end of listing marker + sendcontrol ".\r\n"; + + return 0; +} + sub QUIT_pop3 { sendcontrol "+OK byebye\r\n"; |