1. 12 Oct, 2001 1 commit
    • 	* mailbox/folder_imap.c (imap_body):  Destry the cache header
      	if it was previously set on a SCAN.
      	* mailbox/mbx_imap.c (delete_to_string): New function, to generate
      	a string of IMAP message numbers.
      	(imap_expunge): use delete_to_string;
      	(attribute_string): Removed.
      	(flags_string): Removed.
      	(flags_to_string): Replace attribute_string() and flags_string().
      	(message_operation): Rename to fetch_operation.
      	* mailbox/include/imap0.h(struct _f_imap): field func and id
      	removed, never used.
      Alain Magloire authored
  2. 11 Oct, 2001 3 commits
    • 	(imap_string): Free the buffer.
      	(imap_body): Check if we already have the fheader header.
      	(imap_scan): Forgot the break in the switch.
      
      I think, I broke something in the IMAP code too .. sigh ... it
      is getting to late here to figure this out.
      Alain Magloire authored
    • 	the approach of downloading part of the header of the total
      	set of messages.  The it was done before is that the headers
      	were ask one by one per message.  This was causing performance
      	delay because we were doing a lot of small transaction on
      	the TCP/IP stack.  By bundling the entire thing in one request
      	there was much less transcation and the speed was increase
      	by a factor of 10++.
      	The Imap code folder_imap.c and mbx_imap.c is now messy.
      	The rewrite in mailbox2 should clean this up though.
      
      	* mailbox/folder_imap.c (imap_quoted_string): Allocated the
      	memory instead.
      	(imap_body): If we were doing the scan free the memory and create
      	the cache header.
      	(imap_fetch): Create the message if was not done, important for
      	the scan.
      	* mailbox/mbx_imap.c (imap_scan): Bundle one big request to
      	fetch as much information as possible.
      	(message_operation): Free the buffer when done.
      	* mailbox/include/imap0.h: Add IMAP_SCAN states.
      
      	* mailbox/file_stream.c (_file_readline): It seems that fgets() can
      	not handle binary data.  Try to do our best.
      Alain Magloire authored
    • 	of byte written to 0.
      	(header_get_value): Likewised.
      	* mailbox/mbx_imap.c (imap_envelope_sender): Go through
      	header_get_value() to fetch the "Sender" field, it may be cache.
      	(imap_header_get_fvalue): Put parenthesies around the FETCH, the
      	WU-IMAPD likes it that way.
      Alain Magloire authored
  3. 10 Oct, 2001 2 commits
  4. 09 Oct, 2001 2 commits
  5. 08 Oct, 2001 4 commits
  6. 06 Oct, 2001 2 commits
  7. 05 Oct, 2001 4 commits
  8. 04 Oct, 2001 2 commits
  9. 03 Oct, 2001 2 commits
  10. 02 Oct, 2001 2 commits
    • Alain Magloire authored
    • 	* mailbox2/include/mailutils/sys/mbox.h: New prototypes.
      	* mailbox2/mbox/*.c: Finish implementation.
      	* mailbox2/attribute.c: Add user flags.
      	* mailbox2/dattribute.c: Add user flags.
      
      	To be compatible with the old mailbox, all stream read
      	and write take an offset. Removed stream_seek () and add
      	stream_is_seekable() instead.
      	* mailbox2/stream.c: Likewised.
      	* mailbox2/bstream.c: Likewised.
      	* mailbox2/fdstream.c: Likewised.
      	* mailbox2/fstream.c: Likewised.
      	* mailbox2/mapstream.c: Likewised.
      	* mailbox2/memstream.c: Likewised.
      	* mailbox2/tcpstream.c: Likewised.
      
      	* mailbox2/include/mailutils/error.h: Add EBADFD.
      Alain Magloire authored
  11. 27 Sep, 2001 1 commit
  12. 26 Sep, 2001 1 commit
  13. 24 Sep, 2001 1 commit
  14. 23 Sep, 2001 2 commits
    • Alain Magloire authored
    • 	the base functions/methods visible so the extended object
      	could reuse some base methods if necessary.  Inheritance
      	is possible because we always add to the end of the vtable
      	structure new functions.
      	For example, mime_t object will be also a message_t.
      	and it will be possible to do
      	{
      	  mime_t mime;
      	  header_t header;
      	  ...
      	  message_get_header ((message_t)mime, header);
      	}
      	Another example is tcpstream(socket stream) extends
      	fdstream(file description stream);
      	Also the name of the functions have change to match better
      	there purpose.
      
      	* mailbox2/Makefile.am: lockfile.c added.
      	* mailbox2/bstream.c: Reoganisation to make the
      	functions visible.
      	* mailbox2/dattribute.c: Likewise.
      	* mailbox2/dotlock.c: Likewise.
      	* mailbox2/fdstream.c: Likewise.
      	* mailbox2/fstream.c: Likewise.
      	* mailbox2/mapstream.c: Likewise.
      	* mailbox2/memstream.c: Likewise.
      	* mailbox2/pticket.c: Likewise.
      	* mailbox2/sdebug.c: Likewise.
      	* mailbox2/tcpstream.c: Likewise.
      
      	* mailbox2/include/mailutils/Makefile.am: lockfile.h added.
      	* mailbox2/include/mailutils/attribute.h: Add the new prototypes.
      	* mailbox2/include/mailutils/mbox.h: Add the new prototypes.
      	* mailbox2/include/mailutils/stream.h: Add the new prototypes.
      
      	* mailbox2/include/mailutils/sys/Makefile.am: dattribute.h lockfile.h
      	mapstream.h pticket.h added.
      	* mailbox2/include/mailutils/sys/bstream.h: Add new prototypes.
      	* mailbox2/include/mailutils/sys/fdstream.h: Likewise.
      	* mailbox2/include/mailutils/sys/fstream.h: Likewise.
      	* mailbox2/include/mailutils/sys/mbox.h: Likewise.
      	* mailbox2/include/mailutils/sys/memstream.h: Likewise.
      	* mailbox2/include/mailutils/sys/sdebug.h: Likewise.
      	* mailbox2/include/mailutils/sys/tcpstream.h: Likewise.
      Alain Magloire authored
  15. 20 Sep, 2001 7 commits
  16. 19 Sep, 2001 4 commits