- 24 Oct, 2001 4 commits
-
-
-
that it returns, if it is pointing to non-local file messages, i.e POP3, IMAP4, the entire message may not have been dowloaded yet. IMAP is very susceptible on the size, example: A003 APPEND saved-messages (\Seen) {310} (1) If the IMAP4 server does not get the right size advertise in the string literal, it will misbehave. (2) Since we are assuming that the message will be in (unix)native file system format meaning ending with NEWLINE, we will have to do some calculations about the RFC822.SIZE of the message. (3) As pointed about, it is not possible to rely on message_size() nor message_lines() to return the right count and even missing by one can be deadly. So we download the message to a floating message to guaranty that we know the exact size when transmitting it back the IMAP server, this is the only sane thing to do IMHO. We could always be smart; check if the message is local (i.e from the local file system: mbox, mh, etc ..) and was not modified. If those two requirements are true we can assume that the sizes/lines are right. But for now do it simple, and create a temporary file/message_t. * mailbox/mbx_imap.c (imap_append_message): If the message is from the same IMAP server optimize by doing COPY. If not call imap_append_message0() save the original message to a floating message i.e. file, and use that floating message for the append. Temporary message is destroyed when finish. The drawback is this function is no long nonblocking safe.
Alain Magloire authored -
* mailbox/mutil.c: Add <errno.h> if we use errno directly. (mu_get_user_email): size not used, nuked.
Alain Magloire authored -
properly overriden given the wrong size and line number, fixed. * mailbox/mbx_imap.c (mailbox_imap_close): Not to send another SELECT but rather just close the mailbox if not selected. (imap_scan0): If there is no messages in the mailbox no need to send the FETCH 1:*. * mailbox/message.c (message_is_modified): Protect against null pointer. * TODO: Some stuff todo 8).
Alain Magloire authored
-
- 23 Oct, 2001 14 commits
-
-
-
-
-
-
-
-
-
-
mu_scm_message_free(): Destroy the underlying message if its owner is NULL.
Sergey Poznyakoff authored -
-
-
-
-
- 22 Oct, 2001 1 commit
-
-
- 21 Oct, 2001 2 commits
-
-
- 20 Oct, 2001 2 commits
-
-
-
* doc/texinfo/mbox.texi: Update the doc for mbox(Unix). * doc/texinfo/pop.texi: Update the doc for mbox(Unix). * imap4d/expunge.c: Bug: Expunge was not sending the untag "* %d EXPUNGED" for message deleted. Call imap4d_sync () which will do the right thing. * imap4d/noop.c: Bug: It should call imap4d_sync () to notify the client of any changes. * imap4d/sync.c (notify_deleted): Typo should be EXPUNGED with a D. (imap4d_sync): Bug: Checked also if the number of messages changed. * mailbox/folder_imap.c (imap_flags): Bug: Rewrite it to be generic and sets the flags for the attribute. (imap_fetch_flags): Call imap_flags(). (imap_permanentflags): Call imap_flags(). * mailbox2/include/mailutils/mbox.h: Update prototypes. * mailbox2/include/mailutils/sys/mbox.h: Update prototypes. * mailbox2/include/mailutils/pop3.h: Update prototypes. * mailbox2/mbox/mbox_expunge.c (mbox_expunge): Calls mbox_expunge0 (). (mbox_save): Calls mbox_expunge0(). * mailbox2/mbox/mbox_scan.c (mbox_scan): Calls mbox_scan0 (). (mbox_count): Calls mbox_scan0(). * mailbox2/pop3/pop3_capa.c: Provide a special iterator. * mailbox2/pop3/pop3_lista.c: Provide a special iterator. * mailbox2/pop3/pop3_uidla.c: Provide a special iterator.
Alain Magloire authored
-
- 19 Oct, 2001 12 commits
-
-
-
-
-
-
-
-
-
-
keeps current context (as a MU header). mh_init(): Use new globals. New functions: mh_save_context, mh_write_context_file, mh_check_folder, mh_getyn.
Sergey Poznyakoff authored -
-
-
- 17 Oct, 2001 5 commits
-
-
-
--enable-debug switch. Changed the last log's header line: apparently was a result of some copy-and-paste :^)
Sergey Poznyakoff authored -
-
-
-