aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtests/ftpserver.pl23
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";