Fri, 27 2006, Josko Plazonic wrote:
Copying of a message into Inbox invokes unix_copy (there is no mbox_copy)
which doesn't know about mbox being the inbox so the message gets appended to
/var/spool/mail/username.
An mbox_copy() wouldn't help; unlike append, the driver method call for
copy is selected by the source mailbox rather than the target. Put
another way, an mbox_copy() would only be called if the source mailbox is
INBX -- and then it would have to do the same actions as unix_copy().
However, what can be done is make unix_copy() recognize the case of the
target being INBX and testing for mbox. Please see if the following
patch to unix.c does the trick.
-- Mark --
Science does not emerge from voting, party politics, or public debate.
Si vis pacem, para bellum.
unix/unix.c2006/10/26 21:04:161.16
unix/unix.c2006/10/27 21:39:06
23,29
*Internet: MRC (AT) CAC (DOT) Washington.EDU
*
* Date:20 December 1989
! * Last Edited:26 2006
*/
23,29
*Internet: MRC (AT) CAC (DOT) Washington.EDU
*
* Date:20 December 1989
! * Last Edited:27 2006
*/
880,886
if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
mail_sequence (stream,sequence))) return NIL;
/* make sure destination is valid */
! if (unix_valid (mailbox) || !errno) {
/* try to open rewrite */
if (!(tstream = mail_open_work (&unixdriver,NIL,mailbox,
P_SILENT|P_NKD)))
880,887
if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
mail_sequence (stream,sequence))) return NIL;
/* make sure destination is valid */
! if ((mbox_valid (mailbox) && (mailbox = "mbox")) ||
! unix_valid (mailbox) || !errno) {
/* try to open rewrite */
if (!(tstream = mail_open_work (&unixdriver,NIL,mailbox,
P_SILENT|P_NKD)))
Imap-uw mailing list
Imap-uw@u.washington.edu