Since Mark seems to be listening on the list, but there's no reply yet:
let's make the requirements a bit lighter and ask some more specific
questions. I'll cut this email in two, since it is two different
questions actually.
On Wed, 9 Jun 2004, Tomas Pospisek's Mailing Lists wrote:
> I'm trying to fix mailsync a mail synchronizer to properly work wrt to
> flags. I'm trying to accomplish this by using c-client.
>
> I need to:
>
> * read the headers in box A
> * read the headers in box B
> * determine from the header which emails I have already seen in what
> inbox (same algorithm CVS is using)
> * copy all messages that A hasn't seen from B to A
> * copy all messages that B hasn't seen from A to B
> * delete all messages on B that were deleted on A
> * delete all messages on A that were deleted on B
> * expunge A
> * expunge B
>
> Now the mailsync source code is juggling with mail_open in a rather ugly
> way and I am not sure whether it is really succeeding in all cases
> to keep all the flags (especially "seen") intact on both A and B and at
> the same time trying to do that transparently with respect to where those
> boxes are (IMAP, mbox, mh, remote, locally, ...).
>
> So my first question is:
> is there a way to achieve the above with c-client, that is guaranteed to
> work? Basically this means:
>
> * open a box for reading messages
> * open a box for appending messages
> * expunge a box
>
> and at the same time keep all flags as they were.
"Expunging" a box will, AFAIK traverse all messages, look for those that
are marked for deletion and remove them. A side effect of this seems to
be, that all those traversed messages seem to get marked as "Seen" aka
"Status: O" ("old"). Is this a requirement of some sort? Isn't there a way
around it?
So if there isn't - can we fullfull our requirements, that is to leave all
flags alone, even the "Seen" one, if we don't expunge? Or can't that be
guaranteed even then?
*t
--
-----------------------------------------------------------
Tomas Pospisek
http://sourcepole.com - Linux & Open Source Solutions
-----------------------------------------------------------