Commit Graph

42 Commits

Author SHA1 Message Date
6abd6e01b3 Added "offline_sync" option, which lets you synchronise all mail to local
2003-09-22  Not Zed  <NotZed@Ximian.com>

        * providers/imap/camel-imap-provider.c: Added "offline_sync"
        option, which lets you synchronise all mail to local storage
        automagically.

        * camel-disco-folder.c (cdf_folder_changed): hook onto the folder
        changed single, for all new messages, check that they are online
        using another thread, if the offline_sync option has been enabled
        for this store.

2003-09-21  Not Zed  <NotZed@Ximian.com>

        * camel-session.c (session_thread_destroy): call proper entry
        point for freeing the message.

2003-09-18  Not Zed  <NotZed@Ximian.com>

        * camel-folder.c (filter_filter): register the filtering process
        for progress, and do progress of the filtering process.

2003-09-17  Not Zed  <NotZed@Ximian.com>

        * camel.c (camel_init): init camel operation.

        * camel-operation.c (camel_operation_reset): removed, not used,
        not worth it.
        (camel_operation_mute): new method to stop all status updates
        permanently.
        (*): Changed to use thread specific data and a list rather than a
        hashtable.
        (cancel_thread): removed.
        (camel_operation_register): return the previously registered op.

svn path=/trunk/; revision=22648
2003-09-22 18:48:34 +00:00
2bd47d3cda Get rid of the #ifdef ENABLE_THREADS since we no longer plan to
2003-07-09  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-block-file.c: Get rid of the #ifdef ENABLE_THREADS since
	we no longer plan to support/maintain this.

	* camel.c: Same.

	* camel-certdb.c: Here too.

	* camel-charset-map.c: And here.

	* camel-cipher-context.c: "

	* camel-data-wrapper.c: "

	* camel-digest-folder.c: "

	* camel-exception.c: "

	* camel-folder.c: "

	* camel-folder-summary.c: "

	* camel-lock-client.c: "

	* camel-mime-utils.c: "

	* camel-object.c: "

	* camel-operation.c: "

	* camel-partition-table.c: "

	* camel-sasl-popb4smtp.c: "

	* camel-service.c: "

	* camel-session.c: "

	* camel-store.c: "

	* camel-store-summary.c: "

	* camel-text-index.c: "

	* camel-transport.c: "

	* camel-vee-folder.c: "

	* camel-tcp-stream-openssl.c: Removed pthread.h, it isn't needed.

svn path=/trunk/; revision=21777
2003-07-09 19:05:13 +00:00
f29756cf1a don't #include camel-iconv.h
svn path=/trunk/; revision=20075
2003-02-26 19:40:37 +00:00
74205e83d1 Same as the ones below.
2003-02-25  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-mime-message.c: Same as the ones below.

	* camel-mime-part.c: Reverted back to pre-camel-iconv

	* camel-filter-search.c: Same as below.

	* camel-folder-summary.c: Reverted back to pre-camel-iconv

	* camel.c (camel_init): Reverted to pre-camel-iconv

	* camel-charset-map.c (camel_charset_locale_name): Removed (part
	of the revert).
	(camel_charset_canonical_name): Same.

	* camel-mime-filter-charset.c: Revert back to using e_iconv from GAL.

	* camel-mime-part-utils.c: Revert back to using e_iconv from GAL.

	* camel-mime-utils.c: Revert back to using e_iconv from GAL.

	* camel-sasl-digest-md5.c: Revert back to using e-iconv from GAL.

svn path=/trunk/; revision=20056
2003-02-25 19:43:22 +00:00
abada7e2cd Call camel_iconv_init(). (camel_shutdown): Call camel_iconv_shutdown().
2003-02-20  Jeffrey Stedfast  <fejj@ximian.com>

	* camel.c (camel_init): Call camel_iconv_init().
	(camel_shutdown): Call camel_iconv_shutdown().

	* camel-sasl-digest-md5.c (digest_response): Updated to use
	camel-iconv and the new camel-charset-map functions.

	* camel-mime-utils.c: Updated to use camel-iconv and the new
	camel-charset-map functions.

	* camel-mime-part-utils.c (check_html_charset): Use
	camel_charset_canonical_name() instead of e_iconv_charset_name()
	which is longer available.
	(convert_buffer): Use camel-iconv.
	(simple_data_wrapper_construct_from_parser): Since
	camel_charset_iso_to_windows() returns the charset in it's
	canonical format, no need to re-canonicalise it.

	* camel-mime-part.c (process_header): Use
	camel_charset_canonical_name() instead of e_iconv_charset_name()
	which is longer available.

	* camel-mime-message.c (process_header): Use
	camel_charset_canonical_name() instead of e_iconv_charset_name()
	which is longer available.

	* camel-mime-filter-charset.c: Use camel-iconv.

	* camel-folder-summary.c (message_info_new): Use
	camel_charset_canonical_name() instead of e_iconv_charset_name()
	which is longer available.
	(content_info_new): Use camel_charset_locale_name().
	(camel_message_info_new_from_header): Same as message_info_new().

	* camel-search-private.c: Use g_alloca() instead of alloca().

	* camel-filter-search.c (check_header): Use
	camel_charset_canonical_name() instead of e_iconv_charset_name()
	which is longer available.

	* camel-charset-map.c (camel_charset_locale_name): New function,
	replaces e_iconv_locale_charset().
	(camel_charset_canonical_name): New function, similar to
	e_iconv_charset_name() but instead of returning the iconv-friendly
	name, it returns the canonical name. (g_iconv will do the
	iconv-friendly name conversions for us).

svn path=/trunk/; revision=19977
2003-02-20 21:04:19 +00:00
dcf5f55c1c Always set a g_atexit handler to flush/save the camel-certdb.
2002-08-05  Jeffrey Stedfast  <fejj@ximian.com>

	* camel.c (camel_init): Always set a g_atexit handler to
	flush/save the camel-certdb.

svn path=/trunk/; revision=17700
2002-08-05 20:04:05 +00:00
b0633536f2 New source file implementing a very basic certificate database. This is
2002-07-30  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-certdb.c: New source file implementing a very basic
	certificate database. This is mostly just here because the Mozilla
	NSS certdb seems to not be working for everyone's Evolution
	install (works fine for me and Ettore but not many other people).

	* camel-tcp-stream-ssl.c (ssl_bad_cert): If we have this
	certificate in our own CamelCertDB, then get the trust value from
	that and only prompt the user if the trust is unknown.

	* camel-tcp-stream-openssl.c (ssl_verify): Same.

	* camel.c (camel_init): Create our default certdb.

svn path=/trunk/; revision=17642
2002-07-30 19:16:11 +00:00
4655d88867 Check for LOGIN xxxx as well if debug is on, so we dont print passwords to
2002-05-07  Not Zed  <NotZed@Ximian.com>

        * camel-remote-store.c (remote_send_string): Check for LOGIN xxxx
        as well if debug is on, so we dont print passwords to evolution
        logs.

        * providers/imap/camel-imap-utils.c (imap_is_atom_char): This was
        really broken.  1. isprint() is locale dependent, and 2. it looked
        up an 8 bit value in a 7 bit table without truncating it.  I've
        removed the isprint() stuff and just put it directly into the
        special table, which i've expanded to the right size too.

        * providers/imap/*: Applied patch from Preston Elder
        <prez@magick.tm> to make camel only use literals if it needs to
        for simple strings.  Changed slightly to use imap_is_atom() and
        more consistent formatting.
        providers/imap/camel-imap-utils.c (imap_is_atom): Chagned from
        imap_needs_quoting().

        ** Merged in camel-object2 branch.  Simpler camelobject
        implementation + object args interface.

        * camel.c (camel_init): Call camel_object_get_type() to make sure
        camel_object_type is initialised.

        * camel-object.h (CAMEL_OBJECT_TYPE): Changed to return global
        camel_object_type pointer, not call camel_object_get_type.

svn path=/trunk/; revision=16701
2002-05-07 07:31:26 +00:00
08fb7329cb Fixing the license text.
svn path=/trunk/; revision=14212
2001-10-27 16:59:46 +00:00
02dcd0aadf Update the licensing information to require version 2 of the GPL
(instead of version 2 or any later version).

svn path=/trunk/; revision=14190
2001-10-27 00:25:49 +00:00
7429141682 Use search_type_mlist for mailing list searches.
* camel-filter-search.c, camel-folder-search.c (check_header): Use
	search_type_mlist for mailing list searches.

	* camel.c (camel_init): call camel-mime-utils-init func.

	* camel-mime-utils.c: Changed mail mail_list_magic to include a
	domain part, also pre-compile all the patterns.  They are all
	backward compatible except List-Id: which now uses the
	mail-address-like <list-name.host.name> part rather than the
	plain-text part (which might've been blank anyway).
	(camel_mime_utils_init): Initialisation function to setup any
	static data required by camel-mime-utils at run-time.  We now
	setup the base64/charset class tables here, so it doesn't need to
	be done statically.
	(camel_mime_special_table, camel_mime_base64_rank): No longer
	statically initialise these.
	(main): Removed + the tests at the end of the file.
	(header_raw_check_mailing_list): Dont compile regex's here,
	already compiled in utils_init.  Use the regex patterns to remove
	leading <'s from addresses.  Also, if there is a domain part
	matched, add that after a '@' is added.

	camel-search-private.c:
	(camel_search_header_match): Added SEARCH_TYPE_MLIST for mlist
	search types.  It ignores the domain part if either (but not both)
	of the values dont have it.

svn path=/trunk/; revision=13894
2001-10-22 21:08:05 +00:00
1
a5fa3f992d Removed charset/locale charset lookup and iconv_open/close functions,
2001-10-11    <NotZed@Ximian.com>

        * camel-charset-map.[ch]: Removed charset/locale charset lookup
        and iconv_open/close functions, moved to gal.  Fixed all callers.

svn path=/trunk/; revision=13602
2001-10-11 22:08:20 +00:00
0676d2890e Don't reuse the exception if it has already been set.
2001-09-13  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-filter-driver.c (camel_filter_driver_filter_folder): Don't
	reuse the exception if it has already been set.
	(camel_filter_driver_filter_message): Same here. Also use the new
	return value from camel_filter_search_match().

	* camel-filter-search.c (camel_filter_search_match): Return an
	integer (matched, no-match, or error).

svn path=/trunk/; revision=12819
2001-09-14 01:44:18 +00:00
8a56749aa6 Remove my iso8859-1 -> iso-8859-1 hack and use
2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-mime-utils.c (rfc2047_decode_word): Remove my iso8859-1 ->
	iso-8859-1 hack and use camel_charset_get_iconv_friendly_name()
	instead.
	(rfc2184_decode): Use camel_charset_get_iconv_friendly_name()

	* camel.c (camel_init): Call camel_charset_map_init().

	* camel-charset-map.c (camel_charset_map_init): New function to
	initialize the charset-equivalent lookup table. To be called by
	camel_init().
	(camel_charset_get_iconv_friendly_name): New function to try and
	convert a charset into something that iconv is more likely to
	accept.

svn path=/trunk/; revision=11235
2001-07-19 21:00:27 +00:00
91cc026904 Update the copyrights, replacing Helix Code with Ximian and
helixcode.com with ximian.com all over the place.

svn path=/trunk/; revision=10440
2001-06-23 08:52:02 +00:00
092b7e4449 Redo the BUILD_MAP code to not depend on libunicode. Now it only generates
* camel-charset-map.c: Redo the BUILD_MAP code to not depend on
	libunicode. Now it only generates a map of "popular" 8bit
	encodings. (It's not worthwhile to support obscure encodings,
	because any mailer that supports them will support UTF8 too. And
	Chinese and Japanese use mostly the same UTF8 characters so you
	need to decide between those encodings based on the locale or
	the charset of the message you're replying to or the input
	method you used. So this is sufficient for camel_charset_best's
	use.)

	* camel-charset-map-private.h: Regenerated.

	* camel.c (camel_shutdown): Move #ifdefs around to prevent a
	warning.

svn path=/trunk/; revision=10055
2001-05-30 21:32:18 +00:00
533abeb00f Automagically call camel_shutdown() atexit() ;-) (camel_init): Also
2001-04-26  Jeffrey Stedfast  <fejj@ximian.com>

	* camel.c (camel_init): Automagically call camel_shutdown()
	atexit() ;-)
	(camel_init): Also initialize NSS databases as read/write for
	S/MIME and if NSS fails to init, try initializing with volatile
	databases.

	* camel-file-utils.h: #include <sys/types.h> for off_t.

svn path=/trunk/; revision=9609
2001-04-27 00:16:41 +00:00
18af050c05 Remove UNICODE_CFLAGS (and some other stuff that's redundant with
* Makefile.am (INCLUDES): Remove UNICODE_CFLAGS (and some other
	stuff that's redundant with EXTRA_GNOME_CFLAGS)
	(libcamel_la_LIBADD): Replace UNICODE_LIBS with GAL_LIBS.

	* camel-search-private.c:
	* camel-pgp-context.c:
	* camel-mime-utils.c: Use gunicode interfaces rather than
	libunicode.

	* camel-charset-map.c: Use gunicode rather than libunicode. (The
	charmap-regen code still depends on libunicode though.)

	* camel-mime-filter-charset.h:
	* tests/message/test2.c (convert): Use iconv rather than
	unicode_iconv.

	* providers/smtp/Makefile.am (libcamelsmtp_la_LIBADD):
	* providers/pop3/Makefile.am (libcamelpop3_la_LIBADD):
	* providers/local/Makefile.am (libcamellocal_la_LIBADD): Remove
	UNICODE_LIBS.

	* camel.c (camel_init): Remove call to unicode_init.

	* camel-mime-parser.c: Remove unused unicode.h include.

svn path=/trunk/; revision=9585
2001-04-26 18:21:32 +00:00
fe962a2055 Big header cleanups and nntp compile fix
svn path=/trunk/; revision=9024
2001-03-29 20:31:40 +00:00
c768305c2f Don't include system include dir.
2001-03-17  Jeffrey Stedfast <fejj@ximian.com>

	* Makefile.am: Don't include system include dir.

	* camel.c: Use quotes around the nss.h include so it doesn't try
	to use the systen nss.h file.

	* camel-tcp-stream-ssl.c: Same here.

svn path=/trunk/; revision=8786
2001-03-17 22:13:19 +00:00
403205b15e Don't use the hardcoded cert db directory, use the one passed in.
2001-03-15  Jeffrey Stedfast  <fejj@ximian.com>

	* camel.c (camel_init): Don't use the hardcoded cert db directory,
	use the one passed in.

	* camel-tcp-stream-ssl.c (ssl_get_client_auth): Wrote the default
	implementation. Not that we'll use this though, since this is the
	default implementation provided by NSS anyway. This more or less
	serves as a reference in case we want to change anything.
	(ssl_auth_cert): Same.
	(ssl_bad_cert): Changed the prompt string and free it when we're
	done.

svn path=/trunk/; revision=8753
2001-03-16 04:41:49 +00:00
2da82ca262 So it turns out that NSS_Init *isn't* idempotent, so we have to protect
2001-03-14  Jeffrey Stedfast  <fejj@ximian.com>

	* camel.c (camel_init): So it turns out that NSS_Init *isn't*
	idempotent, so we have to protect against initializing it more
	than once(contrary to what their design specs suggest).

	* camel-session.c (camel_session_get_service): Use
	camel_exception_is_set() - Makes no difference but it's more
	consistant with how we normally do it.

	* camel-provider.h (CAMEL_URL_ALLOW_SSL): We don't need this.

	* providers/imap/camel-imap-provider.c: Define the imaps provider.
	(camel_provider_module_init): Register the imaps provider.

	* camel-provider.c (camel_provider_init): Only add the protocol to
	the hash table if it's non empty. Also, g_strdup() the filename
	into the hash table.

	* providers/imap/camel-imap-store.c (camel_imap_store_init): Eek!
	So the service's URL isn't set until after this is
	initialized. This means we can't check for SSL here.
	(imap_connect): Set the SSL options here instead.

svn path=/trunk/; revision=8718
2001-03-15 01:59:00 +00:00
343844c138 Eek! So the service's URL isn't set until after this is initialized. This
2001-03-14  Jeffrey Stedfast  <fejj@ximian.com>

	* providers/imap/camel-imap-store.c (camel_imap_store_init): Eek!
	So the service's URL isn't set until after this is
	initialized. This means we can't check for SSL here.
	(imap_connect): Set the SSL options here instead.

svn path=/trunk/; revision=8715
2001-03-15 00:51:09 +00:00
e31313b07f Since all of the Mozilla libs (including NSPR and NSS) correctly handle
2001-03-13  Jeffrey Stedfast  <fejj@ximian.com>

	* camel.c (camel_init): Since all of the Mozilla libs (including
	NSPR and NSS) correctly handle reinitializations, we might as well
	init both NSPR and NSS in camel_init so we can be sure of that
	these libs have been initialized.
	(camel_shutdown): New function to call the NSS cleanup stuff.

svn path=/trunk/; revision=8690
2001-03-13 23:31:32 +00:00
abe164fb39 Created a new mode (CAMEL_AUTHENTICATOR_ACCEPT) which is a Yes/No prompt
2001-03-09  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-session.c (camel_session_query_authenticator): Created a
	new mode (CAMEL_AUTHENTICATOR_ACCEPT) which is a Yes/No prompt to
	the user. This will be needed by the SSL/TLS code to come. Also
	changed the return value to a gpointer rather than a char* to
	allow the returning of TRUE/FALSE values.

	* camel.c: Wrap stuff with HAVE_NSS

svn path=/trunk/; revision=8623
2001-03-10 00:15:49 +00:00
e12bc65aa5 Uses an SSL socket now although there's still a few things missing (like
2001-01-15  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-tcp-stream-ssl.c (stream_connect): Uses an SSL socket now
	although there's still a few things missing (like certificate
	handling and such).

	* camel.c (camel_ssl_init): A replacement function for
	camel_init() that also initializes SSL.

svn path=/trunk/; revision=7494
2001-01-15 06:25:23 +00:00
6de256c2a2 Lock the command channel while searching. (imap_body_contains): If
2000-12-24  Not Zed  <NotZed@HelixCode.com>

        * providers/imap/camel-imap-search.c (imap_body_contains): Lock
        the command channel while searching.
        (imap_body_contains): If performing a whole uid search, then add
        references to our own summary items, dont look it up in the
        folder.  This way they can't vanish unexpectedly.

        * providers/imap/camel-imap-folder.h (CamelImapFolder): Added a
        private field.

        * providers/imap/camel-imap-private.h: Added lock for imap
        searches.

        * Merge from camel-mt-branch.

        * providers/imap/camel-imap-folder.c (imap_update_summary): Merge
        fix, use the folder->summary.
        (imap_get_message_flags, imap_set_message_flags,
        imap_get_message_user_flag, imap_set_message_user_flag): Removed
        again.
        (camel_imap_folder_init): Setup private data/lock.
        (imap_finalize): Free private data/search lock.
        (imap_search_free): Lock the search_lock.
        (imap_search_by_expression): Lock the search lock when using the
        search object.  Also copy/ref hte summary, rather than getting it
        directly.
        (imap_refresh_info): Free any info lookups.  Use folder->summary
        not imap_folder->summary.  And lock around commands.

svn path=/trunk/; revision=7150
2000-12-24 00:46:20 +00:00
e2c2e5b55a Set camel_verbose_debug to TRUE if CAMEL_VERBOSE_DEBUG is set in the
* camel.c (camel_init): Set camel_verbose_debug to TRUE if
	CAMEL_VERBOSE_DEBUG is set in the environment.

	* camel-remote-store.c (remote_send_line, remote_recv_line): only
	log if camel_verbose_debug is TRUE.

svn path=/trunk/; revision=5462
2000-09-15 18:26:36 +00:00
b1e66c4c60 Cleanup of lots of exception handling ; bugfixes
svn path=/trunk/; revision=5202
2000-09-05 20:08:10 +00:00
dbce630738 Add support for specifying on which port to connect to a server; fix a potential infinite loop in unicode.
svn path=/trunk/; revision=5041
2000-08-25 21:09:53 +00:00
8c9b0cc3f0 No longer call data_wrapper_repository_init.
2000-04-24  NotZed  <NotZed@HelixCode.com>

	* camel.c (camel_init): No longer call
	data_wrapper_repository_init.

	* camel-medium.c (write_to_stream): Moved (back) to
	camel-mime-part.
	(add_header):
	(set_header):
	(remove_header):
	(get_header): Make all these abstract, and spit warnings if
	called.  I guess it could manage the list, but well, it doesn't.

	* camel-medium.h (struct _CamelMedium): Dont store headers here,
	the implementor is the only one who knows their format.
	(CamelMediumClass): Changed header values to be void *'s.  They
	need not be strings?

	* camel-simple-data-wrapper.c (construct_from_stream): And we're
	back.  Set the output stream.
	(construct_from_parser): Moved to camel-mime-part-utils.

	* camel-mime-part-utils.c
	(camel_mime_part_construct_content_from_parser): Create the
	contents of multipart and simple messages.

	* camel-multipart.c (construct_from_parser): Moved to
	camel-mime-part-utils.
	(separate_part): Removed.

	* camel-mime-part.c (construct_from_stream): Back again!  This now
	switches over to using a mime parser for any mime parts, only.
	(my_write_to_stream): Write our headers and so forth here.
	(add_header): Add header directly, parent class is abstract.
	(remove_header): Ditto.
	(set_header): Ditto.

	* camel-data-wrapper.c (camel_data_wrapper_construct_from_stream):
	Remade abstract.
	(camel_data_wrapper_construct_from_parser): Moved to
	camel_mime_part.

	* camel-data-wrapper.h: Put back construct_from_stream.

	* camel-mime-part.h: Put construct_from_parser in here, the
	data-wrapper shouldn't know about mime.  Ok, so now to undo half
	of the last hours changes ... duh.

2a51,93
	* providers/pop3/camel-pop3-folder.c (get_message_by_number): Use
	construct_from_stream instead of set_input_stream().

	* camel-simple-data-wrapper-stream.c
	(camel_simple_data_wrapper_stream_construct): REmoved the destroy
	callback code.
	(wrapper_destroy_cb): Removed.

	* camel-simple-data-wrapper.h: Add prototype for _construct()
	method.

	* camel.c: Include unicode.h to kill a warning.

	* camel-data-wrapper.h (CameldataWrapperClass): Removed
	construct_from_stream virtual method.
	Removed get/set input stream.

	* data-wrapper-repository.[ch]: Removed&from build.  Obsoleted?
	The justification as is follows: It is mixing storage
	protocol/format with message architecture.  It really just doesn't
	serve any purpose, as each medium implementor will have to have its
	own type->handler mapping, and the only current implementor,
	mimepart has a very simple structure and no need for this.

	* camel-medium.c (write_to_stream): Moved here from most of the
	stuff in camel-mime-part.  Well, the MEDIUM is the one that knows
	what the headers are, and the content is, let it write it out.

	* camel-mime-part-utils.c (camel_mime_part_construct_content):
	Copied from camel-mime-part.c, removed handling of message
	followon state (moved to camel-mime-message).
	(camel_mime_part_construct_content_from_parser): Renamed from
	construct_content.
	(camel_mime_part_construct_headers_from_stream):
	(camel_mime_part_construct_content_from_stream):
	(camel_mime_part_store_stream_in_buffer): Removed.  Replaced by
	the new construct from parser stuff.

	* camel-mime-message.c (construct_from_parser): Do
	construct_from_parser for mime-message.
	(_write_to_stream): Set the mime-version header for medium to
	write out, rather than writing it out ourselves.

4a96,102
	(construct_from_stream): Removed.
	(camel_data_wrapper_construct_from_stream): Changed to a helper
	function, creates a mime_parser, and constructs from that.
	(set_input_stream): Removed.
	(camel_data_wrapper_set_input_stream): Removed.
	(get_input_stream): Removed.
	(camel_data_wrapper_get_input_stream): Removed.
11a110,111
	(_get_message_by_uid): Use construct_from_stream() instead of
	creating our own parser.
16a117,131
	(camel_mime_part_construct_content): Removed to
	camel-mime-part-utils.c
	(my_get_output_stream): Removed.  The streeam is in the
	data-wrapper.
	(my_get_content_object): Removed.  The content object is stored in
	the medium.  If none is there, the object wasn't created properly.
	(my_write_content_to_stream): Removed.  The content object is the
	one that knows how to write itself out!!!!!!!!
	(my_write_to_stream): Remove the base header writing stuff - has
	been moved to camel-medium, where it belongs.  This can just be
	used to check for mandatory headers.
	(my_construct_from_stream): Removed.
	(my_set_input_stream): What the hell, i'll remove this too.
	Nobody seems to understand how it differs from create from stream,
	and they both seem to serve the same purpose ...
19a135,136
	(construct_from_stream): Removed!  Job taken over by
	construct_from_parser.
24a142
	(set_input_stream): REmoved.  Replaced by construct_from_parser.

svn path=/trunk/; revision=2577
2000-04-24 06:05:41 +00:00
170588e217 use libunicode iconv functions rather than libc ones (since libc might not
* camel-mime-utils.c (rfc2047_decode_word): use libunicode iconv
	functions rather than libc ones (since libc might not have them).
	(header_decode_date): add autoconfiscation on timezone code

	* camel.c (camel_init): call unicode_init ()

svn path=/trunk/; revision=2540
2000-04-21 04:05:12 +00:00
1e7ab47d26 fix the name of "Helix Code, Inc." in all the copyrights
svn path=/trunk/; revision=2091
2000-03-09 19:52:48 +00:00
7f04720b1e don't seek the begining of the substream. (_eos): fix eos condition
2000-02-16  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-seekable-substream.c (_set_bounds): don't
	seek the begining of the substream.
	(_eos): fix eos condition testing.
	(_finalize): unref parent stream
	(_init_with_seekable_stream_and_bounds): ref parent stream

	* camel/gstring-util.c (g_string_equal_for_hash):
	(g_string_equal_for_glist): return type is int.

	* camel/camel.h:
	* camel/camel.c (camel_init): use (void)
	instead of ().

A lot of other small changes to make the set_input_stream
scheme work. It actually works.

svn path=/trunk/; revision=1798
2000-02-16 18:04:40 +00:00
784c1184a8 don't build thread related tests if evolution has been compiled with no
2000-02-10  bertrand  <Bertrand.Guiheneuf@aful.org>

	* tests/Makefile.am (THREAD_RELATED_TESTS): don't
	build thread related tests if evolution has been
	compiled with no thread support.

	* configure.in (have_pthread): allow user to enable/disable
	thread support at configure time
	(EXTRA_GNOME_CFLAGS):
	(EXTRA_GNOME_LIBS): thread support is directly
	included in this variable if enabled. No more
	EXTRA_GNOME_CFLAGS_THREADS
	Other special support should be added in
	EXTRA_GNOME_LIBS and EXTRA_GNOME_CFLAGS
	instead of redefining a new variable
	each time we want to add a new lib.
	(bonobo, ....)

	* camel/camel.c (camel_init): only try to initialize threads if
	we enabled threads support.

	* tests/ui-tests/Makefile.am (message_browser_LDADD): use
	EXTRA_GNOME_LIBS

	* configure.in (have_pthread): remove HAVE_PTHREADS
	variable. Define ENABLE_THREADS instead.

	* camel/Makefile.am: use ENABLE_THREADS not HAVE_PTHREADS
	to test if we build thread relateed code.

	* tests/Makefile.am: use EXTRA_GNOME_LIBS,
	not EXTRA_GNOME_LIBS_THREADS


I need to be able to disable thread support to use Insure.

svn path=/trunk/; revision=1725
2000-02-11 00:43:23 +00:00
98e15c6b5c add recipient_list to the recipients, not recipients_list. I don't know
2000-01-24  bertrand  <bertrand@helixcode.com>

	* camel/camel-recipient.c (camel_recipient_table_add_list):
	add recipient_list to the recipients, not recipients_list.
	I don't know what that variable was doing here.

2000-01-23  bertrand  <bertrand@helixcode.com>

	* camel/camel-store.c (camel_store_get_session):
	added a public get_session method.

	* camel/providers/mbox/camel-mbox-summary.c (camel_mbox_save_summary):
	(camel_mbox_load_summary): load/save message sizes in the summary file

	* camel/providers/mbox/camel-mbox-summary.h:
	added a size field to the message information
	structure.

	* camel/providers/mbox/camel-mbox-utils.c (parsed_information_to_mbox_summary):
	copy message size to the mbox summary information too.

	* camel/camel-stream-fs.c (_seek): updated to
	work with bounded fs streams.
	(_write): ditto.
	(_read): ditto.

	* camel/camel-stream-fs.h (struct ):
	added the cur_pos, inf_bound and sup_bound
	members to allow for bounded fs stream.

	* camel/camel-stream-fs.c (_set_bounds): new func.
	(_init_with_fd_and_bounds): idem.
	(_init_with_name_and_bounds): idem.
	New functions to allow the usage of bounded fs streams.

	The bounded fs stream allow, for example, to make a stream
	from a message stored in an mbox file.

svn path=/trunk/; revision=1620
2000-01-24 15:07:18 +00:00
316a4c47ff Updated my e-mail address to reflect my new employment
svn path=/trunk/; revision=1533
2000-01-03 23:05:55 +00:00
331335d12c Fix copyright informations once again
svn path=/trunk/; revision=1489
1999-12-14 22:40:38 +00:00
b681ec2b9a Here is my initial Evolution work: message composition widget and some
installation fixes for Camel.

svn path=/trunk/; revision=1369
1999-11-05 23:06:09 +00:00
8fe1aa5f41 Copyright change
svn path=/trunk/; revision=1348
1999-10-23 15:19:51 +00:00
bf9f54f961 A lot of changes. The thread proxy mechanism
is now functional. The signal proxy needs to be tested
though. The thread proxy folder is being implemented.
A rough summary :

1999-10-13  bertrand <Bertrand.Guiheneuf@aful.org>

	* camel/camel-folder.c (camel_folder_close): the
	folder->close method is now asynchronous.

	* camel/camel-folder-pt-proxy.c (_folder_open_cb):
	(_open):
	(_folder_open_cb):
	(_open):
	open/close method implemented in the thread proxy
	folder. More to come.

	* camel/camel-exception.c (camel_exception_xfer):
	new utility func.

	* camel/camel-marshal-utils.c: some new marshallers

	* camel/camel-folder-pt-proxy.c: Some explanations
	on the thread proxy system.

1999-10-11  bertrand <Bertrand.Guiheneuf@aful.org>

	* camel/camel-marshal-utils.c:
	camel/camel-marshal-utils.h:
	Handles operation marshalling.

	* camel/camel-thread-proxy.c:
	camel/camel-thread-proxy.h:
	new files. Generic proxy system.

	* camel/camel-folder-pt-proxy.c
	moved all proxy related code in dedicated files.

	(camel_folder_pt_proxy_init):
	removed proxy initialisation code
	(_finalize):
	removed proxy finalization code


	* camel/camel-exception.c
	(camel_exception_new):
	(camel_exception_set):
	(camel_exception_free):
	New funcs.

svn path=/trunk/; revision=1328
1999-10-13 21:16:55 +00:00
3d7a8fdeac Adding missing files
svn path=/trunk/; revision=1053
1999-08-01 13:42:43 +00:00