aboutsummaryrefslogtreecommitdiffstats
path: root/imap.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>1996-09-28 05:02:42 +0000
committerEric S. Raymond <esr@thyrsus.com>1996-09-28 05:02:42 +0000
commit14992ea3f8d34e9784f062b6c890b326bb8b46ec (patch)
tree66b468a50c6b80f3ac4e4ffb785e50ce07ab64f7 /imap.c
parentea57c21bd08ef4e2c1e075d013cfa24465a1021c (diff)
downloadfetchmail-14992ea3f8d34e9784f062b6c890b326bb8b46ec.tar.gz
fetchmail-14992ea3f8d34e9784f062b6c890b326bb8b46ec.tar.bz2
fetchmail-14992ea3f8d34e9784f062b6c890b326bb8b46ec.zip
With any luck, this is a correct implementation of UIDL support.
svn path=/trunk/; revision=168
Diffstat (limited to 'imap.c')
-rw-r--r--imap.c34
1 files changed, 22 insertions, 12 deletions
diff --git a/imap.c b/imap.c
index 902688f0..eb1553a4 100644
--- a/imap.c
+++ b/imap.c
@@ -206,20 +206,30 @@ int number;
return(0);
}
+static imap_delete(socket, queryctl, number)
+/* set delete flag for given message */
+int socket;
+struct hostrec *queryctl;
+int number;
+{
+ return(socket, gen_transact("STORE %d +FLAGS (\\Deleted)", number));
+}
+
static struct method imap =
{
- "IMAP", /* Internet Message Access Protocol */
- 143, /* standard IMAP2bis/IMAP4 port */
- 1, /* this is a tagged protocol */
- 0, /* no message delimiter */
- imap_ok, /* parse command response */
- imap_getauth, /* get authorization */
- imap_getrange, /* query range of messages */
- imap_fetch, /* request given message */
- imap_trail, /* eat message trailer */
- "STORE %d +FLAGS (\\Deleted)", /* set IMAP delete flag */
- "EXPUNGE", /* the IMAP expunge command */
- "LOGOUT", /* the IMAP exit command */
+ "IMAP", /* Internet Message Access Protocol */
+ 143, /* standard IMAP2bis/IMAP4 port */
+ 1, /* this is a tagged protocol */
+ 0, /* no message delimiter */
+ imap_ok, /* parse command response */
+ imap_getauth, /* get authorization */
+ imap_getrange, /* query range of messages */
+ NULL, /* no UID check */
+ imap_fetch, /* request given message */
+ imap_trail, /* eat message trailer */
+ imap_delete, /* set IMAP delete flag */
+ "EXPUNGE", /* the IMAP expunge command */
+ "LOGOUT", /* the IMAP exit command */
};
int doIMAP (queryctl)