Commit Graph

747 Commits

Author SHA1 Message Date
d88be436d9 added camel-mime-filter-smtp.[c,h] and made mods to camel-mime-filter-from.c
svn path=/trunk/; revision=3163
2000-05-22 18:14:39 +00:00
2ce4eb74b6 > searchpart = strchr(namepart, '?');
2000-05-19  NotZed  <NotZed@HelixCode.com>

        * camel-simple-data-wrapper.c (construct_from_stream): If we
        already have been constructed, unref our content.
        (write_to_stream): Check we've been constructued, and change for
        stream api changes.

        * camel-mime-parser.c: Removed exception stuff.

        * md5-utils.c (md5_get_digest_from_stream): repaired.

        * camel-mime-message.c: Remove exception from write_to_stream, and
        fix, and fix formatting.

        * providers/sendmail/camel-sendmail-transport.c (_send_internal):
        Fix for stream changes.

        * providers/pop3/camel-pop3-store.c (camel_pop3_command): Fixes
        for stream changes.

        * providers/mbox/camel-mbox-folder.c, and elsewhere, fix all
        stream api changes.
        (mbox_append_message): Use stream_close() now its back.
        (mbox_append_message): unref the from filter.

        * camel-stream-mem.c: And here.

        * camel-stream-fs.[ch]: Here too.

        * camel-stream-filter.c: Likewise.  This is getting tedious.

        * camel-stream-buffer.c (stream_write): Fix a few little problems.
        (stream_close): Reimplmeent.
        (camel_stream_buffer_read_line): Slightly more efficient version,
        that also only allocates the right amount of memory for strings.

        * camel-seekable-substream.c: Likewise.

        * camel-seekable-stream.[ch]: Remove exceptions, fix formatting,
        changes for stream (re)fixes.  set_bounds returns an error.

        * camel-stream.[ch]: Remove exceptions.  Make flush and reset return
        an error code, repair all the screwed up formatting, and put back
        close.

        * camel-mime-part-utils.c
        (camel_mime_part_construct_content_from_parser): And here.

        * camel-mime-part.c (camel_mime_part_set_content): And this too.
        (write_to_stream): Fixed for stream changes.

        * camel.h: Fixed.

        * providers/vee/camel-vee-folder.c (vee_search_by_expression):
        Implement.  Performs an intersection of the two searches.
        (camel_vee_folder_finalise): Unref search folders.
        (vee_append_message): Implement append.

svn path=/trunk/; revision=3142
2000-05-19 19:58:41 +00:00
a909e956da remove message_number_capability and require uid capatibility.
* camel-folder.c: remove message_number_capability and require uid
	capatibility.
	(camel_folder_list_subfolders, camel_folder_get_uid_list,
	camel_folder_get_subfolder_info, camel_folder_get_message_info):
	removed
	(camel_folder_get_subfolder_names,
	camel_folder_free_subfolder_names): new subfolder interfaces.
	(camel_folder_get_uids, camel_folder_free_uids): new uid
	interfaces
	(camel_folder_get_summary, camel_folder_free_summary): new summary
	interfaces

	* providers/mbox/camel-mbox-folder.c,
	* providers/nntp/camel-nntp-folder.c:
	* providers/vee/camel-vee-folder.c: Update for changes

	* providers/pop3/camel-pop3-folder.c: Implement get_uids, update
	for other changes.

svn path=/trunk/; revision=3126
2000-05-19 00:47:36 +00:00
847e3e6d6b add urls file
svn path=/trunk/; revision=3124
2000-05-18 23:39:57 +00:00
1ff07425c1 Guess!
2000-05-18  NotZed  <NotZed@HelixCode.com>

        * providers/vee/camel-vee-folder.c: Guess!

        * camel-folder-search.c (search_user_flag): Implement user_flag
        search term.

        * camel-folder-search.h: Added user_flag search capability
        (user-flag "blah")

        * providers/mbox/camel-mbox-folder.c (mbox_init): Set USER flag in
        permanent flags for the folder.

svn path=/trunk/; revision=3122
2000-05-18 22:40:24 +00:00
9eda0faddf Remove unused async open/close and copy_message_to functions. Rename
* camel-folder.c: Remove unused async open/close and
	copy_message_to functions.
	Rename functions without initial _. Fix glib preconditions and
	gtk-doc comments.

svn path=/trunk/; revision=3116
2000-05-18 02:24:30 +00:00
0cd1c1934c remove get/set_output_stream operations. They're redundant with
* camel-data-wrapper.c: remove get/set_output_stream operations.
	They're redundant with write_to_stream, and CamelMimePart and
	CamelMimeMessage only implement the latter, meaning that trying to
	get_output_stream on a CamelMimeMessage that was built from pieces
	rather than being parsed from a stream doesn't work. Anything that
	uses get_output_stream can be rewritten to use write_to_stream, so
	we'll standardize on that.
	(camel_data_wrapper_new): remove this: CamelDataWrapper is
	supposed to be an abstract class.
	(write_to_stream): remove default implementation. (Moved to
	CamelSimpleDataWrapper)

	* camel-simple-data-wrapper.c: resurrect, although it's not really
	the same thing it was before. A simple data wrapper, which is
	backed by a CamelStream.

	* camel-mime-part-utils.c
	(simple_data_wrapper_construct_from_parser): Use
	construct_from_stream rather than set_output_stream.
	(camel_mime_part_construct_content_from_parser): Change
	camel_data_wrapper_new to camel_simple_data_wrapper_new.

	* camel-mime-part.c (camel_mime_part_set_content): Change
	camel_data_wrapper_new to camel_simple_data_wrapper_new.

svn path=/trunk/; revision=3112
2000-05-18 01:00:25 +00:00
879ec8920b Quick fix to get it to compile. I hope I don't get into trouble.
* camel-folder-summary.c: (message_info_load):
	Quick fix to get it to compile. I hope I don't get into trouble.

svn path=/trunk/; revision=3110
2000-05-17 23:40:47 +00:00
d034f9071d Don't include the no-longer-distributed possibly-to-be-removed headers.
* camel.h: Don't include the no-longer-distributed
	possibly-to-be-removed headers.

svn path=/trunk/; revision=3109
2000-05-17 21:01:39 +00:00
43169eb17d fix an off-by-one error in address parsing (smtp_data): use
* providers/smtp/camel-smtp-transport.c
	(smtp_get_email_addr_from_text): fix an off-by-one error in
	address parsing
	(smtp_data): use camel_data_wrapper_get_output_stream rather than
	data_wrapper->output_stream

svn path=/trunk/; revision=3108
2000-05-17 19:41:18 +00:00
14bc1cbfc8 All this basically to support user flags in the summary. They are not yet
All this basically to support user flags in the summary.  They
are not yet saved to the message headers (complicates things a bit).

2000-05-17  NotZed  <NotZed@HelixCode.com>

        * providers/mbox/camel-mbox-folder.c (message_changed): Snoop
        changes to user flags on the message into the summary as well.

        * providers/mbox/camel-mbox-summary.c (camel_mbox_summary_init):
        Changed version init to include the parent class version info
        (i.e. add it not overwrite it).

        * camel-folder-summary.c (message_info_new): Initialise user_flags
        to empty.
        (message_info_load): And load user flags.
        (message_info_save): And save user flags.
        (message_info_free): And free them.
        (CAMEL_FOLDER_SUMMARY_VERSION): Bumped file revision.

        * camel-folder-summary.h: Added user-flags to summary.

        * camel-mime-message.c (camel_mime_message_set_user_flag): Dont
        use a hashtable for user flags.
        (camel_mime_message_get_user_flag): And changed here too.
        (camel_flag_get): New interface to get a flag from a flag
        list.  Flag lists are easier to work with than hash tables, and
        save memory too.
        (camel_flag_set): And set.
        (camel_flag_list_free): And free.
        (free_key_only): Discard.
        (finalize): Remove the flag list.

svn path=/trunk/; revision=3107
2000-05-17 19:24:24 +00:00
4f7a55138c error checking on gethostbyaddr() in providers/smtp/camel-smtp-transport.c
svn path=/trunk/; revision=3104
2000-05-17 14:58:52 +00:00
07f1218fa4 Implement.
2000-05-16  NotZed  <NotZed@HelixCode.com>

        * providers/mbox/camel-mbox-folder.c (mbox_delete_message_by_uid):
        Implement.

2000-05-12  NotZed  <NotZed@HelixCode.com>

        * camel-movemail.c (camel_movemail): Open the destination with
        O_APPEND, so we dont blow away a partially transferred mbox.
        (camel_movemail): Loop if we get errno=INTR, and not fail.

svn path=/trunk/; revision=3100
2000-05-17 04:08:41 +00:00
6b41e70220 get things working with new camel summary stuff.
* providers/nntp/camel-nntp-folder.c:
	* providers/nntp/camel-nntp-folder.h:
	* providers/nntp/camel-nntp-provider.c:
	* providers/nntp/camel-nntp-store.c:
	* providers/nntp/camel-nntp-utils.c:
	* providers/nntp/camel-nntp-utils.h:
	get things working with new camel summary stuff.

	* providers/nntp/camel-nntp-summary.c:
	* providers/nntp/camel-nntp-summary.h:
	removed files since camel-folder-summary does all we need.

svn path=/trunk/; revision=3090
2000-05-16 13:08:43 +00:00
d3999f9c4c o Added some preliminary ESMTP AUTH support
Mon May 15 17:19:31 EDT 2000  Jeffrey Stedfast  <fejj@stampede.org>

  o Added some preliminary ESMTP AUTH support

svn path=/trunk/; revision=3049
2000-05-15 21:20:26 +00:00
71902b570c Remove camel_folder_get_summary, which no longer exists.
* camel-folder.h: Remove camel_folder_get_summary, which no longer
	exists.

svn path=/trunk/; revision=3045
2000-05-15 13:52:56 +00:00
d55e9e0406 remove some cruft that we're not currently using.
* Makefile.am: remove some cruft that we're not currently using.

svn path=/trunk/; revision=3002
2000-05-12 00:48:40 +00:00
2ea807ebc5 Change to match prototype (size_t vs unsigned int) so it works on 64-bit
* camel-stream-mem.c (camel_stream_mem_new_with_buffer): Change
	to match prototype (size_t vs unsigned int) so it works on 64-bit
	machines. Noted by msw.

svn path=/trunk/; revision=2998
2000-05-11 21:54:50 +00:00
802d83d5a0 now it deff compiles
svn path=/trunk/; revision=2995
2000-05-11 20:48:38 +00:00
cb13084bc2 > * providers/mbox/camel-mbox-folder.c (message_changed): Indicate
> 	the summary changed also.
>

> 	(camel_mbox_summary_update): Also save summary when done.
> 	(camel_mbox_summary_expunge): Unindex items when deleting them.
> 	(camel_mbox_summary_expunge): Save the index as well as the
> 	summary.

> 	(camel_folder_summary_touch): New function, indicate the summary
> 	info changed.
> 	(camel_folder_summary_remove): Dirty here.

svn path=/trunk/; revision=2994
2000-05-11 20:46:13 +00:00
d41602b8ec camel-smtp-transport.c will now compile :)
svn path=/trunk/; revision=2993
2000-05-11 20:45:44 +00:00
1e54cba4d3 providers/smtp/camel-smtp-transport.c: updated smtp_helo to more closely comply with RFC 821 standards
svn path=/trunk/; revision=2991
2000-05-11 20:11:07 +00:00
e17b3c90f4 Big bunch o memleaks fixed.
2000-05-11  NotZed  <NotZed@HelixCode.com>

        * camel-mime-part.c (write_to_stream): Unref the filter after
        adding it to the filtering stream.

        * providers/mbox/camel-mbox-summary.c
        (camel_mbox_summary_finalise): Free the folder path.

        * camel-folder-summary.c (camel_folder_summary_finalise): Free the
        summary path.

        * camel-internet-address.c (internet_decode): Free multiple entry
        addresses properly.

        * camel-mime-utils.c (header_decode_mailbox): Plugged another
        memleak, free text after converting it.
        (header_decode_addrspec): More leaks plugged.

        * camel-mime-message.c (finalize): Free message_uid.
        (finalize): Free the recipients hashtable.

svn path=/trunk/; revision=2989
2000-05-11 18:39:53 +00:00
1
d91a0645f9 Free summary items and charset filters.
2000-05-11    <notzed@helixcode.com>

        * camel-folder-summary.c (camel_folder_summary_finalise): Free
        summary items and charset filters.

2000-05-10    <notzed@helixcode.com>

        * camel-folder-summary.c (camel_folder_summary_finalise): Don't
        free stuff in p, after we've free'd p.

        * providers/mbox/camel-mbox-folder.c (mbox_append_message): Unref
        the stream we created for appending.

svn path=/trunk/; revision=2986
2000-05-11 17:05:04 +00:00
4901547950 fixed camel_smtp_transport_class_init(): now initializes service_class
svn path=/trunk/; revision=2979
2000-05-10 21:10:27 +00:00
128d255031 fix a stupid typo. Thank you, C.
* camel-multipart.c (write_to_stream): fix a stupid typo. Thank
	you, C.

	* camel-mime-part.c (write_to_stream): don't ref the stream before
	wrapper a filter around it, since nothing will ever unref it.

svn path=/trunk/; revision=2978
2000-05-10 20:14:12 +00:00
4a2777a279 Removed dist-hook section.
2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Removed dist-hook section.

	* configure.in: Set the version number.  Added a check for gnome
	window icons.  Removed a bunch of unused Makefiles.

	* tools/Makefile.am: Created a proper EXTRA_DIST section.

	* widgets/e-text/Makefile.am: Added
	e-text-event-processor-types.h.

From addressbook/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* backend/ebook/Makefile.am: Added e-book-types.h, e-card-pairs.h,
	e-card-types.h.

	* backend/pas/Makefile.am: Added pas-backend-ldap.h.

	* contact-editor/Makefile.am: Added a proper EXTRA_DIST section.
	Removed some old defines.

	* ename/Makefile.am: Added e-name-western-tables.h.

	* gui/component/Makefile.am: Added e-ldap-server-dialog.h.  Added
	a proper EXTRA_DIST section.

	* gui/minicard/e-reflow.c: Added a missed cast.

	* printing/Makefile.am: Added a proper EXTRA_DIST section.

From calendar/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* gui/Makefile.am: Added main.h.  Combined the two EXTRA_DIST
	sections.

From camel/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added camel-types.h, camel-folder-pt-proxy.h, and
	camel-thread-proxy.h.

From default_user/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am, local/Calendar/Makefile.am,
	local/Contacts/Makefile.am, local/Directories/Makefile.am,
	local/Directories/subfolders/Bigfoot/Makefile.am,
	local/Directories/subfolders/Netcenter/Makefile.am,
	local/Drafts/Makefile.am, local/Inbox/Makefile.am,
	local/Outbox/Makefile.am, local/Trash/Makefile.am: Created a
	proper EXTRA_DIST section.

From filter/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* filter-arg.h: Changed tree.h to gnome-xml/tree.h.

	* Makefile.am: Added filter-arg-types.h, filter-arg.h,
	filter-xml.h, filter-format.h, filter-druid.h, filter-editor.h.

From libical/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* configure.in: Reorder Makefiles so that it will build.

From mail/ChangeLog:

2000-05-09  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Removed folder-browser-factory.h since it doesn't
	exist.  Added mail-display.h, mail-types.h, pixmaps.h.

From widgets/e-table/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added e-table-col-dnd.h and table-test.h.

From wombat/ChangeLog:

2000-05-10  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added an include for the pcs directory.

svn path=/trunk/; revision=2966
2000-05-10 14:47:09 +00:00
e7996a7ab1 Bleah. Can't fsync a pipe. As a quick kludge, just don't stream_flush it.
* providers/sendmail/camel-sendmail-transport.c (_send_internal):
	Bleah. Can't fsync a pipe. As a quick kludge, just don't
	stream_flush it. The right fix will require bringing back
	stream_close though.

svn path=/trunk/; revision=2950
2000-05-09 16:59:59 +00:00
93a4ec1e20 o Undid changes to camel-internet-address.[c,h] o Fixed
Tue May  9 09:32:33 EDT 2000  Jeffrey Stedfast  <fejj@stampede.org>
  o Undid changes to camel-internet-address.[c,h]
  o Fixed providers/smtp/camel-smtp-transport.c _send to use camel_internet_address_get()
  o formatting changes to providers/smtp/camel-smtp-transport.c

svn path=/trunk/; revision=2938
2000-05-09 13:25:26 +00:00
a07fe2730b o Moved struct_address from camel-internet-address.c to
Tue May  9 09:03:18 EDT 2000  Jeffrey Stedfast  <fejj@stampede.org>
  o Moved struct_address from camel-internet-address.c to camel-internet-address.h (so it could be used in providers/smtp/camel-smtp-transport.h)
  o providers/smtp/camel-smtp-transport.c _send should now work like it was meant to

CVS

svn path=/trunk/; revision=2937
2000-05-09 12:56:51 +00:00
debd40014f one more refcounting fix I missed before.
* providers/mbox/camel-mbox-folder.c (mbox_get_message_by_uid):
	one more refcounting fix I missed before.

svn path=/trunk/; revision=2930
2000-05-09 04:57:31 +00:00
efb0b90afc o updated to use CamelException (as needed by new camel-stream.c) o no
Mon May  8 22:12:55 EDT 2000  Jeffrey Stedfast  <fejj@stampede.org>
  o updated to use CamelException (as needed by new camel-stream.c)
  o no longer frees memory it shouldn't touch

svn path=/trunk/; revision=2929
2000-05-09 02:07:01 +00:00
65ec43cb55 Use CamelException to signal failure. (camel_stream_write_strings):
* camel-stream.c (camel_stream_read, camel_stream_write,
	camel_stream_flush, camel_stream_reset, camel_stream_printf,
	camel_stream_write_to_stream): Use CamelException to signal
	failure.
	(camel_stream_write_strings): Remove. camel_stream_printf is more
	useful in most of the places that used this.
	(camel_stream_write_string): Change from macro to function to
	prevent problems with double-evaluation.

	* camel-seekable-stream.c (camel_seekable_stream_seek,
	camel_seekable_stream_set_bounds): Use CamelException.
	(reset): Update.

	* camel-seekable-substream.c, camel-stream-buffer.c,
	camel-stream-filter.c, camel-stream-fs.c, camel-stream-mem.c:
	Update.

	* camel-stream-fs.c: Remove the virtual init functions and move
	the code into the creator functions. Add CamelExceptions to
	creation functions that could fail.

	* camel-data-wrapper.c (camel_data_wrapper_write_to_stream): Use
	CamelException.
	* camel-mime-message.c, camel-mime-part.c, camel-multipart.c
	(write_to_stream): Update.

	* camel-mime-parser.c: add an exception to the mime parser private
	data and pass that to stream functions as needed.

	* gmime-content-field.c, md5-utils.c: Update (badly) for stream
	changes.

	* camel-exception.h (camel_exception_is_set): convenience macro.

	* providers/Makefile.am: disable SMTP for now

	* providers/mbox/camel-mbox-folder.c (mbox_append_message): Pass
	CamelException to the functions that now need it. Check the
	exception after calling camel_stream_flush, and fail if it fails.
	(mbox_get_message_by_uid): More updates.

	* providers/pop/camel-pop3-folder.c,
	providers/pop/camel-pop3-store.c,
	providers/sendmail/camel-sendmail/transport.c: Update.

svn path=/trunk/; revision=2924
2000-05-08 22:27:59 +00:00
f168e3972c Format From and Reply-To to at least a decoded string. Should probably
2000-05-08  NotZed  <NotZed@HelixCode.com>

        * camel-mime-message.c (process_header): Format From and Reply-To
        to at least a decoded string.  Should probably store them as an
        camelinternetaddress.

svn path=/trunk/; revision=2908
2000-05-08 06:17:33 +00:00
b00a9126e5 blah
svn path=/trunk/; revision=2907
2000-05-08 05:39:29 +00:00
b7f49ccf57 Merged NEW_SUMMARY branch back to trunk, and resolved conflicts.
2000-05-08  NotZed  <NotZed@HelixCode.com>

	* Merged NEW_SUMMARY branch back to trunk, and resolved conflicts.

	* providers/mbox/camel-mbox-summary.c (camel_mbox_summary_update):
	Return status.

	* camel-stream-filter.c (do_close): We NEED a stream close.

svn path=/trunk/; revision=2906
2000-05-08 05:24:54 +00:00
580d885820 Make camel not leak like a sieve.
* camel-object.c: New subclass of GtkObject which is now the base
	of the Camel object hierarchy. Currently the only difference
	between CamelObject and GtkObject is that CamelObjects don't start
	out floating.

	* *.h: Move a bunch of typedefs to camel-types.h. Standardize on
	using <camel/foo.h> in header files rather than <foo.h>, "foo.h",
	or "camel/foo.h". Remove some unneeded includes.

	* camel-address.c, camel-data-wrapper.c, camel-folder-search.c,
	camel-folder-summary.c, camel-folder.c, camel-mime-filter.c,
	camel-mime-parser.c, camel-service.c, camel-session.c,
	camel-stream.c: These are now subclasses of CamelObject.

	* camel-data-wrapper.c (set_output_stream):
	* camel-medium.c (set_content_object):
	* camel-seekable-substream.c
	(init_with_seekable_stream_and_bounds):
	* providers/mbox/camel-mbox-folder.c (mbox_get_message_by_uid):
	remove gtk_object_sink calls.

	* camel-stream-buffer.c (init_vbuf):
	* camel-stream-filter.c (camel_stream_filter_new_with_stream):
	ref the original stream.

	* camel-folder-summary.c (camel_folder_summary_finalise): unref
	the filters when finalizing.

	* camel-mime-part-utils.c
	(simple_data_wrapper_construct_from_parser,
	camel_mime_part_construct_content_from_parser):
	* camel-mime-part.c (camel_mime_part_set_content): Unref objects
	that are created only to be handed off to other objects. If
	they're going to be needed later, they will have been additionally
	ref'ed by the object that needs them.

	* providers/pop3/camel-pop3-folder.c (get_message_by_number):
	unref the message stream after creating the data from it.

	* camel-stream.c, camel-stream-buffer.c, camel-stream-filter.c,
	camel-stream-fs.c, camel-stream-mem.c: Remove camel_stream_close,
	since its semantics are dubious (what happens when you close a
	stream other people still have references on?).

	* providers/nntp/camel-nntp-store.c:
	* providers/smtp/camel-smtp-transport.c:
	* providers/pop3/camel-pop3-store.c:
	replace camel_stream_close calls with gtk_object_unref.

	* providers/mbox/camel-mbox-folder.c:
	* providers/nntp/camel-nntp-folder.c:
	* providers/sendmail/camel-sendmail-transport.c:
	replace camel_stream_close with camel_stream_flush +
	gtk_object_unref

svn path=/trunk/; revision=2882
2000-05-07 21:56:32 +00:00
7c90b45149 A machine which serves neither POP nor KPOP is not a POP server.
* providers/pop3/camel-pop3-store.c (query_auth_types): A machine
	which serves neither POP nor KPOP is not a POP server.

	* providers/smtp/camel-smtp-provider.c: Note in the description
	that this provider is not yet tested.

svn path=/trunk/; revision=2843
2000-05-06 22:59:12 +00:00
659c7faac5 And same here ... (camel_folder_summary_encode_fixed_int32): Ugh, fwrite
2000-05-05  NotZed  <NotZed@HelixCode.com>

        * camel-folder-summary.c: And same here ...
        (camel_folder_summary_encode_fixed_int32): Ugh, fwrite doesn't
        return -1 on error ..
        (camel_folder_summary_decode_fixed_int32): Neither deos fread.
        (camel_folder_summary_encode_token): Fix here too.

svn path=/trunk/; revision=2819
2000-05-05 18:58:05 +00:00
aa7851f1f0 And same here ...
2000-05-05  NotZed  <NotZed@HelixCode.com>

        * camel-folder-summary.c: And same here ...

        * camel-mime-utils.c: Defined out some memory profiling stuff I
        left there by mistake.

        * camel-mime-parser.c (folder_scan_content): Apply the fix from
        the header scanner to here too.
        (folder_scan_header): Only check for end of header if we have
        space for it (didn't end the read with a newline)
        (folder_scan_header): inptr is the only real thing we need
        registerised for performance.  Try to help the compiler be smart
        about it ..
        (folder_scan_header): Simplified the save header case a tad.

        Commented out some memory profiling stuff.

svn path=/trunk/; revision=2811
2000-05-05 08:47:02 +00:00
5
022c7ab1f2 Plug a memory leak. (header_decode_text): Fixed memory leaks with
2000-05-05    <notzed@helixcode.com>

        * camel-mime-utils.c (header_decode_mailbox): Plug a memory leak.
        (header_decode_text): Fixed memory leaks with g_string_append().
        (header_encode_string): And here too, and a few other places.  The
        glib api is so awful ...
        (header_content_type_decode): More memory leaks, more left ...

2000-05-05    <notzed@helixcode.com>

        * camel-mime-parser.c (folder_scan_init_with_fd): Make sure we
        init the end of buffer sentinal!
        (folder_scan_init_with_stream): And here too ...

svn path=/trunk/; revision=2810
2000-05-05 07:28:20 +00:00
214c910550 Maxcount is minimum of the max and the requested count, not the maximum :)
2000-05-04  NotZed  <NotZed@HelixCode.com>

        * providers/mbox/camel-mbox-folder.c (summary_get_message_info):
        Maxcount is minimum of the max and the requested count, not the
        maximum :)

        * camel-mime-parser.c (folder_scan_content): Properly set midline,
        so we dont falsely catch offset boundary markers (i.e. From inside
        content).
        (folder_read): Set a sentinal on the end of the read data (\n) so
        we dont have to check the buffer boundary in the inner loop.
        (mempool_*): New experimental memory management routines, speed
        up simple structure parsing by about 25% ... not compiled in by
        default.  Something similar may be needed for camel-mime-utils to
        address performance issues with g_malloc and friends.

        * camel-mime-utils.c: Added a macro w(x) used to wrap all warnings
        about mime/rfc violations, so they can be turned off.

        * camel-folder-summary.c (summary_build_content_info): Step after
        the end of a message ...
        Turn into a stand-alone program for testing and profiling.

svn path=/trunk/; revision=2808
2000-05-05 03:46:07 +00:00
4856f92e7b Make this compile again in the !KRB4 case
svn path=/trunk/; revision=2800
2000-05-04 18:28:08 +00:00
67656eb615 Don't fall back to plaintext passwords if APOP fails, since it should also
* providers/pop3/camel-pop3-store.c (pop3_connect): Don't fall
	back to plaintext passwords if APOP fails, since it should also
	fail.

svn path=/trunk/; revision=2798
2000-05-04 16:02:49 +00:00
ba6b73fe56 New function to replace camel_provider_scan. Returns a list of either (a)
* camel-session.c (camel_session_list_providers): New function to
        replace camel_provider_scan. Returns a list of either (a) all
        currently-loaded providers, or (b) all available providers.

        * camel-url.[ch]: Add an "empty" flag to CamelURL (indicating that
        it contains only a protocol).

        * camel-service.c (camel_service_query_auth_types): Make this take
        a CamelException (since it may have to try to connect to the
        server, and it might not able to.)

        * providers/pop3/camel-pop3-store.c: add KPOP (Kerberized POP)
        support. This is mostly so I have two kinds of authmech to play
        with instead of just one. (But it does actually work.)

        * providers/smtp/camel-smtp-transport.c (query_auth_types): update
        for prototype change, but disable the functionality, since it
        doesn't really support any auth types yet.
        (camel_smtp_transport_get_type): add an object init function to
        set the service url_flags.

svn path=/trunk/; revision=2797
2000-05-04 15:23:43 +00:00
f8bfbef0a7 No, we're not going to have g_strcasecmp for no good reason,
not even if its slipped in with no changelog.

2000-05-04  NotZed  <NotZed@HelixCode.com>

	* providers/mbox/camel-mbox-summary.c: Yes, and anotherone.

	* camel-mime-utils.c: And another one.

	* camel-mime-part.c: And another one.

	* camel-mime-part-utils.c: And another one.

	* camel-folder-search.c: And another one.

	* camel-mime-parser.c: Reverted a change wihtout a ChangeLog entry.

2000-05-04  NotZed  <NotZed@HelixCode.com>

	* camel-folder-summary.[hc]: Yes, CamelFolderSummary is back ...
	... re-usable class to summarise and index any stream or message
	and to manage/load/save the created summaries.

	* camel-folder.c: Include string.h to kill a warning.

2000-05-03  NotZed  <NotZed@HelixCode.com>

	* camel-folder.h: Added pos/bodypos/endpos to the basic message
	content info object.  Size to be removed?  Moved the
	messageconentinfo and messageinfo back to camel-folder-summary.h.

	* camel-mime-filter-index.c (camel_mime_filter_index_set_ibex):
	New function to (re)set the index to use on a filter.

	* camel-mime-parser.c (camel_mime_parser_scan_from): Whole bunch
	of inline docs.
	(camel_mime_parser_drop_step): New function to drop a state from
	the parser.  Needs more testing.

svn path=/trunk/; revision=2789
2000-05-04 05:45:30 +00:00
d4d70c5c3c Some small build fixes:
* camel/Makefile.am (INCLUDES): add $(UNICODE_CFLAGS) to the INCLUDES,
	people who installed libunicde in non-standard include paths
	need this.

        * mail/Makefile.am (evolution_mail_LDADD):
	s/-lunicode/$(UNICODE_LIBS)/

svn path=/trunk/; revision=2785
2000-05-04 01:15:11 +00:00
3ccfb61399 s/strcasecmp/g_strcasecamp/ everywhere except intl/, per michael's
request.

svn path=/trunk/; revision=2776
2000-05-03 14:43:10 +00:00
ff8bc3108a If the iconv handle is -1, then dont try and convert (crashes
2000-05-03  NotZed  <NotZed@HelixCode.com>

        * camel-mime-utils.c (rfc2047_decode_word): If the iconv handle is
        -1, then dont try and convert (crashes unicode_iconv?).
        (rfc2047_decode_word): Use alloca for variables instead of
        g_malloc - by the rfc they should always be short.
        (rfc2047_decode_word): If we can't do the charset conversion, undo
        the quoted-printable/base64 at least?  Should probably convert
        unknown characters to the utf-8 unknown character.

svn path=/trunk/; revision=2774
2000-05-03 04:20:26 +00:00
f27621c3a2 fix typo when dereferencing saveoffset.
2000-05-02  Larry Ewing  <lewing@helixcode.com>

	* camel-mime-utils.c (header_decode_date): fix typo when
	dereferencing saveoffset.

svn path=/trunk/; revision=2771
2000-05-03 03:35:31 +00:00