Subject: POP3 UIDL

From: Edmund GRIMLEY EVANS <[email-masked]>
Date: Mon, 19 Jul 1999 12:03:13 +0200

Am I right in thinking that c-client doesn't use POP3's UIDL command?
What might be the best way of using UIDL with c-client?

I'm writing a specialist mail client with the requirements that it must

 - be able to consult e-mail on a POP3 server
   (it would be an advantage to be able to do IMAP too)

 - not delete e-mail from the server unless asked to

 - not store the e-mail locally between sessions, though it can keep
   UIDs or headers

 - provide access to the MIME structure of messages

Is c-client a good tool for this, or am I barking up the wrong tree
right from the start?

Edmund

-- 
------------------------------------------------------------------
 For information about this mailing list, and its archives, see: 
 http://www.washington.edu/imap/c-client-list.html
------------------------------------------------------------------

---

From: Mark Crispin <[email-masked]>
Date: Mon, 19 Jul 1999 17:31:54 -0700 (Pacific Daylight Time)

> What might be the best way of using UIDL with c-client?

The c-client POP3 client does not use the POP3 UIDL command.  However, the
c-client POP3 server does support UIDL.

c-client implements IMAP-style UIDs which can be expressed by a POP3
UID; however the reverse isn't true.  POP3 UIDs are random strings with no
ordering requirements, whereas IMAP UIDs are 64-bit values (32 bits of
which are constant within the mailbox and are expressed as a "UID
validity" value) which are required to be strictly ascending within the
mailbox.  It's also possible to access IMAP messages via UID, whereas in
POP3 you have to download the UID/message-number map.

Since the primary focus of c-client development is for IMAP rather than
the obsolete POP3 protocol, there are no plans to support UIDL within the
c-client POP3 client code.  It is technically possible to add such support
with some work, but it would have to be through an separate mechanism than
the c-client UID mechanism since c-client applications take advantage of
the IMAP UID semantics which aren't in POP3 UIDs.

You may want to consider making the primary focus of your application
being IMAP instead of POP3, and support POP3 only for compatibility with
the past.