XFER command does not transfer cyrus.expunge and the deleted messages.

Paul Turgyan pturgyan at umich.edu
Wed Sep 20 16:31:29 EDT 2006

I have just submitted a bug (#2877)  and a patch that fixes XFER,   
such that XFER
also transfers the cyrus.expunge and the deleted but unexpunged  
message files
to the destination machine.  The approach I used was to open the  
directory and
transfer all the message files,  transfer the cyrus.expunge file (if it
exists),  and then the other meta files.  Finally the rest of the user's
files are transferred in dump_mailbox (mbdump.c).

The only problem I can see with this,  is if the destination machine
does not support delayed expunge,  we have transferred the  
and the previously deleted messages.  These deleted messages are now
sitting in the destination mailbox but not in the cyrus.index file.   
If the user's mailbox
were then reconstructed, the deleted messages would end up back in  
the mailbox.

Rename also has the same problem (bug 2872),  where the cyrus.expunge is
deleted and the deleted messages are expunged and not moved to the  
new location.
I propose adding similar code to rename, that moves whatever message  
files in the mailbox
to the destination along with all the meta files.

So do you think this is a valid way of processing xfer and rename?

More information about the Cyrus-devel mailing list