aboutsummaryrefslogtreecommitdiffstats
path: root/pop3.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2001-07-06 00:08:03 +0000
committerEric S. Raymond <esr@thyrsus.com>2001-07-06 00:08:03 +0000
commit2b5a9b2cc2fbcd1b2f1d5b40d147095b0bfc04bf (patch)
treeb5535d3571da003ccaecb02b594c7836b594c6a2 /pop3.c
parentf6f4def1a28b6a3528e0391a5eccd9c403881765 (diff)
downloadfetchmail-2b5a9b2cc2fbcd1b2f1d5b40d147095b0bfc04bf.tar.gz
fetchmail-2b5a9b2cc2fbcd1b2f1d5b40d147095b0bfc04bf.tar.bz2
fetchmail-2b5a9b2cc2fbcd1b2f1d5b40d147095b0bfc04bf.zip
Issue RSET before QUIT if keep is enabled.
svn path=/trunk/; revision=3394
Diffstat (limited to 'pop3.c')
-rw-r--r--pop3.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/pop3.c b/pop3.c
index 7f7bcb56..1046aa66 100644
--- a/pop3.c
+++ b/pop3.c
@@ -711,6 +711,13 @@ static int pop3_logout(int sock, struct query *ctl)
{
int ok;
+ /*
+ * Just in case the server marks messages deleted when seen.
+ * Yes, this has been reported, in the MercuryP/NLM server.
+ */
+ if (ctl->keep)
+ gen_transact(sock, "RSET");
+
ok = gen_transact(sock, "QUIT");
if (!ok)
expunge_uids(ctl);