Commit Graph

181 Commits

Author SHA1 Message Date
cce3726fe9 Plug in GSSAPI support.
2003-03-20  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-sasl.c: Plug in GSSAPI support.

	* camel-sasl-gssapi.[c,h]: Various fixes to make it compile (fixed
	type-o's mostly).

svn path=/trunk/; revision=20438
2003-03-20 19:37:38 +00:00
bcae81e843 removed unused filter code that was wrong anyway
svn path=/trunk/; revision=20058
2003-02-25 20:45:22 +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
3e0211a7d2 Define in terms of privincludedir. (camellibexecdir): Define in terms of
* Makefile.am (libcamelincludedir): Define in terms of
	privincludedir.
	(camellibexecdir): Define in terms of privlibexecdir
	(libcamel_la_LDFLAGS): Remove -rpath. (automake will add that)

	* providers/imap/Makefile.am (libcamelimapincludedir): Define in
	terms of privincludedir.
	(INCLUDES): Remove -I$(includedir)
	* providers/local/Makefile.am: Likewise
	* providers/nntp/Makefile.am: Likewise
	* providers/pop3/Makefile.am: Likewise
	* providers/sendmail/Makefile.am: Likewise
	* providers/smtp/Makefile.am: Likewise

svn path=/trunk/; revision=19775
2003-02-05 22:34:18 +00:00
7fb9c16e8f $(libexec) -> $(libexecdir)
2003-01-22  Hans Petter Jansson  <hpj@ximan.com>

	* Makefile.am: $(libexec) -> $(libexecdir)

svn path=/trunk/; revision=19573
2003-01-22 21:33:04 +00:00
5a2fc93d30 Update to the new $(BASE_VERSION)-versioned path. Likewise. Likewise.
* providers/imap/Makefile.am (libcamelimapincludedir): Update to
the new $(BASE_VERSION)-versioned path.
* providers/smtp/Makefile.am (libcamelsmtpincludedir): Likewise.
* providers/sendmail/Makefile.am (libcamelsendmailincludedir):
Likewise.
* providers/pop3/Makefile.am (libcamelpop3includedir): Likewise.
* providers/nntp/Makefile.am (libcamelnntpincludedir): Likewise.
* providers/local/Makefile.am (libcamellocalincludedir): Likewise.

* camel-lock-client.c (camel_lock_helper_init): Use
CAMEL_LIBEXECDIR instead of CAMEL_SBINDIR to find
camel-lock-helper.

* Makefile.am: Install camel-lock-helper and camel-index-control
in $(libexec)/evolution/$(BASE_VERSION)/camel.  Install
libcamel.la in $privlibdir.
(install-exec-hook): Update for the new location of
camel-lock-helper.
(libcamelincludedir): Version using $(BASE_VERSION).
(INCLUDES): Define CAMEL_LIBEXECDIR.

svn path=/trunk/; revision=19554
2003-01-22 20:08:56 +00:00
a84f11d6bd Replace calls to g_string_sprintfa() with g_string_append_printf() since
2002-12-17  Jeffrey Stedfast  <fejj@ximian.com>

	* providers/imap/camel-imap-utils.c: Replace calls to
	g_string_sprintfa() with g_string_append_printf() since the former
	seems to have been deprecated.

	* providers/imap/camel-imap-search.c: Same.

	* providers/imap/camel-imap-folder.c: Here too.

	* providers/local/camel-mbox-summary.c: And here.

	* providers/local/camel-local-summary.c: Replace
	g_string_sprintf() with g_string_printf().

	* camel-data-cache.c (data_cache_expire): Replace
	g_string_sprintf() with g_string_printf().

	* camel-url.c: Replace calls to g_string_sprintfa() with
	g_string_append_printf() since the former seems to have been
	deprecated.

	* camel-service.c: Same.

	* camel-mime-utils.c: Here too.

svn path=/trunk/; revision=19154
2002-12-17 21:46:44 +00:00
ebc92ca5e2 #include some headers we had forgotten to add previously, also added
2002-12-16  Jeffrey Stedfast  <fejj@ximian.com>

	* camel.h: #include some headers we had forgotten to add
	previously, also added camel-mime-filter-enriched.h.

	* camel-mime-filter-enriched.[c,h]: New stream filter to convert
	text/enriched and text/richtext into HTML.

svn path=/trunk/; revision=19124
2002-12-16 15:05:06 +00:00
d2971bf645 New code to scan for patterns (used only for url pattern matching atm, but
2002-12-09  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-url-scanner.c: New code to scan for patterns (used only
	for url pattern matching atm, but we may find other uses for this
	and thus rename it? I dunno). Uses ETrie.

svn path=/trunk/; revision=19075
2002-12-09 23:18:31 +00:00
3c508b93d7 don't #include <gtk/gtk.h>
svn path=/trunk/; revision=18639
2002-11-07 21:49:25 +00:00
796a15280d Added.
2002-11-07  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-i18n.h: Added.

	* camel-object.h: #include camel-i18n.h instead of gnome-i18n.h

	* camel-lock.c: Same.

svn path=/trunk/; revision=18638
2002-11-07 21:34:17 +00:00
c8b587d9c5 Created temporary link list, we need to link with something for gettext.
2002-11-05  Not Zed  <NotZed@Ximian.com>

	* Makefile.am (camel_lock_helper_LDADD): Created temporary link
	list, we need to link with something for gettext.

	* camel.h: Remove gstring-util.h and hash-table-utils.h.

	* camel-text-index.c:
	(text_index_normalise): Changed for g_utf8_strdown api change.

	* camel-search-private.c:
	* camel-mime-utils.c:
	* camel-mime-part-utils.c:
	* camel-html-parser.c:
	* camel-charset-map.c: Include glib/gunicode.h from glib instead
	of gal.

	* camel-filter-driver.c: Remove include of gtk/gtk.h, should never
	have been there.

svn path=/trunk/; revision=18542
2002-11-05 09:05:24 +00:00
29748a7520 Removed hash-table-utils.[c,h] from the build.
2002-10-31  Jeffrey Stedfast  <fejj@ximian.com>

	* Makefile.am: Removed hash-table-utils.[c,h] from the build.

	* hash-table-utils.[c,h]: Removed.

	* string-util.c: Imported g_strcase[hash,equal] into here so we
	can remove hash-table-utils.[c,h].

	* camel-medium.c: Removed #include "hash-table-utils.h"

	* camel-mime-message.c: Same here.

	* camel-mime-part.c: And here.

	* camel-session.c: Here too.

	* providers/imap/camel-imap-store-summary.c: #include
	string-utils.h instead of hash-table-utils.h

	* camel-charset-map.c: Same.

	* camel-folder-summary.c: Here too.

	* camel-provider.c: Again here.

	* camel-store-summary.c: And again...

svn path=/trunk/; revision=18473
2002-10-31 21:57:29 +00:00
f48db35928 Remove a ton of useless snot.
2002-10-31  Jeffrey Stedfast  <fejj@ximian.com>

	Remove a ton of useless snot.

	* Makefile.am: Remove gstring-util.[c,h] from the build.

	* gstring-util.[c,h]: Removed.

	* string-utils.c (string_equal_for_glist): Removed.
	(string_split): Removed.
	(string_trim): Removed.
	(string_prefix): Removed.
	(string_unquote): Removed.
	(strip): Removed.

	* hash-table-utils.c (g_hash_table_generic_free): Removed.

	g_str[n]casecmp functions are deprecated in glib2.

	* string-utils.c (strstrcase): Use strncasecmp instead of
	g_strncasecmp.

	* hash-table-utils.c (g_strcase_equal): Use strcasecmp
	instead of g_strcasecmp.

	* camel-smime-utils.c (camel_smime_is_smime_v3_signed): Same.
	(camel_smime_is_smime_v3_encrypted): Here too.

	* camel-sasl-digest-md5.c (decode_data_type): And here.
	(parse_server_challenge): Again here.

	* camel-pgp-mime.c (camel_pgp_mime_is_rfc2015_signed): Same.
	(camel_pgp_mime_is_rfc2015_encrypted): Same

	* camel-mime-part-utils.c (check_html_charset): Here too.

	* camel-folder-summary.c (camel_system_flag): Same.

svn path=/trunk/; revision=18472
2002-10-31 21:41:26 +00:00
76d4c1a98e fixes a crash on systems that dont have utf7 in iconv.
2002-08-28  Not Zed  <NotZed@Ximian.com>

        * providers/imap/camel-imap-utils.c (imap_mailbox_encode): Chagned
        to use camel_utf8_utf7 code.
        (imap_mailbox_decode): As above, using camel_utf8_utf7.  'UTF-7'
        isn't a widely support iconv() codeset, and besides the new code
        is simpler.

        * camel-utf8.[ch]: robust utilities for working with utf8 and utf7.

svn path=/trunk/; revision=17886
2002-08-28 07:45:17 +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
ecb477e338 Removed.
2002-06-26  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-pgp-context.[c,h]: Removed.

	* camel-pgp-mime.c (pgp_mime_part_sign_restore_part): Removed.
	(pgp_mime_part_sign_prepare_part): Removed.
	(camel_pgp_mime_part_sign): Removed.
	(camel_pgp_mime_part_verify): Removed.
	(camel_pgp_mime_part_encrypt): Removed.
	(camel_pgp_mime_part_decrypt): Removed.
	(camel_pgp_mime_is_rfc2015_signed): Documented.
	(camel_pgp_mime_is_rfc2015_encrypted): Same.

svn path=/trunk/; revision=17303
2002-06-26 22:15:24 +00:00
a44c898aa1 New class implementing the multipart/encrypted content type. Contains
2002-06-26  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-multipart-encrypted.[c,h]: New class implementing the
	multipart/encrypted content type. Contains methods for encrypting
	and decrypting a multipart/encrypted MIME object.

svn path=/trunk/; revision=17296
2002-06-26 19:14:34 +00:00
ea65693685 New source files implementing the CamelCipherContext class for gnupg.
2002-06-21  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-gpg-context.[c,h]: New source files implementing the
	CamelCipherContext class for gnupg.

	* camel-pgp-context.c (camel_pgp_context_new): Return a
	CamelCipherContext.

	* camel-pgp-mime.c (camel_pgp_mime_part_decrypt): Take a
	CamelCipherContext argument rather than a CamelPgpContext since we
	now have a CamelGpgContext also.
	(camel_pgp_mime_part_encrypt): Same.
	(camel_pgp_mime_part_verify): Same.
	(camel_pgp_mime_part_sign): Same.

svn path=/trunk/; revision=17251
2002-06-21 19:11:57 +00:00
9534ce2e95 Updated to support searching as well as making it use CamelDigestSummary.
2002-06-20  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-digest-folder.c: Updated to support searching as well as
	making it use CamelDigestSummary.

	* camel-digest-summary.[c,h]: New class to handle the summary for
	CamelDigestFolder.

	* camel-tcp-stream-ssl.c (set_errno): PR_IO_TIMEOUT_ERROR should
	map to ETIMEDOUT and not EAGAIN.
	(stream_connect): Reset the PR_Poll() timeout back to 2 minutes as
	this wasn't the problem afterall.

svn path=/trunk/; revision=17249
2002-06-20 21:32:17 +00:00
1c309b14c4 Added a protocol field for users to use.
2002-05-30  Not Zed  <NotZed@Ximian.com>

        * camel-cipher-context.h: Added a protocol field for users to use.

        * camel-stream-filter.c (do_read): Sigh, the pre-size is READ_PAD
        not READ_SIZE.  Big difference.
        (READ_PAD): Bumped upto 128 from 64, so we can fit a typical line
        in full.

        * providers/imap/camel-imap-folder.c (get_content): Changed to
        load multipart/signed as an opaque block into the right kind of
        object.

        * camel-multipart.h (struct _CamelMultipart): Removed the boundary
        field.  It wans't actually used anywhere.

        * camel-seekable-substream.c
        (camel_seekable_substream_new_with_seekable_stream_and_bounds):
        Shortened this stupidly long name to just :new(), its the only way
        its ever used.  Fixed all callers.

        * camel-multipart-signed.[ch]: new wrapper for multipart/signed
        types.  We need to treat the entire content as a blob of data for
        transport purposes.  This also cleans up a lot of the sign/verify
        handling.

        * camel-mime-part-utils.c
        (camel_mime_part_construct_content_from_parser): Just call
        camel_multipart_construct_from_parser for multipart parts, also
        use a multipart_signed for multipart/signed types.

        * camel-multipart.c (camel_multipart_construct_from_parser): New
        virtual function for multiparts to buld themselves.
        (construct_from_parser): Implement for normal multiparts.
        (toplevel): Got rid of a warning, it'll never be an abstract
        class.

        * camel-pgp-context.c (pgp_hash_to_id):
        (pgp_id_to_hash): Implement.
        (camel_pgp_context_init): Init the pgp protocol specifier.

        * camel-cipher-context.c (camel_cipher_id_to_hash):
        (camel_cipher_hash_to_id): Util virtual methods to handle the
        cipher id string.

        * camel-mime-filter-canon.[ch]: A new filter, end/start of line
        canonicalisation filter.  Can escape "From " and strip trailing
        whitespace, and canonicalise the end of line to crlf or to lf.

2002-05-29  Not Zed  <NotZed@Ximian.com>

        * camel-multipart.h (struct _CamelMultipart): Removed the
        'parent', nothing used it, anywhere.  Cleaned up some formatting
        slightly.

svn path=/trunk/; revision=17057
2002-05-31 01:05:47 +00:00
a9fc56de69 Removed from the build. Glory glory hallelujah.
2002-05-22  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-remote-store.c: Removed from the build. Glory glory
	hallelujah.

	* camel-disco-store.c: Updated to inherit from
	CamelStore rather than CamelRemoteStore.

	* providers/imap/camel-imap-command.c (imap_command_start): Don't
	use the camel-remote-store shit to send a string. Just use
	camel_stream_printf for chrissakes.

	* providers/imap/camel-imap-store.c: Updated to not depend on
	CamelRemoteStore and to handle STARTTLS.
	(imap_disconnect_online): Unref the streams.
	(imap_keepalive): Removed.
	(camel_imap_store_connected): New function to replace
	camel_remote_store_connected().
	(camel_imap_store_finalize): Unref the streams.
	(camel_imap_store_recv_line): New function to replace
	camel_remote_store_recv_line().
	(imap_get_capability): Renamed from connect_to_server
	(connect_to_server): New function to try and connect to the
	server.
	(connect_to_server_wrapper): New wrapper function around
	connect_to_server that takes the ssl modes into consideration.
	(query_auth_types): Don't bother calling our parent's
	implementation of query_auth_types() since CamelDiscoStore doesn't
	have any anyway.
	(imap_get_name): New method to implement CamelService::get_name

svn path=/trunk/; revision=16975
2002-05-22 20:17:48 +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
c6fc4e27a9 When we add a new name, up all of the cache limits, because we're probably
2002-03-25  Not Zed  <NotZed@Ximian.com>

        * camel-text-index.c (text_index_add_name): When we add a new
        name, up all of the cache limits, because we're probably going to
        be adding more.
        (text_index_sync): Drop the cache limits back down again, we dont
        need them when looking words up.

        ** MERGE camel_index branch.

        * camel-text-index.[ch]: Added files i forgot to add (eep nearly
        lost all this work!)

        * camel-block-file.c (sync_nolock): Fix an infinite loop in syncing.

svn path=/trunk/; revision=16242
2002-03-25 12:11:44 +00:00
4a3b1a551d A pretty empty store implementation to be the parent store of a
2002-03-11  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-digest-store.c: A pretty empty store implementation to be
	the parent store of a CamelDigestFolder.

	* camel-digest-folder.c: Updated to reference it's parent store.

svn path=/trunk/; revision=16113
2002-03-12 00:24:03 +00:00
6024691d3c Rename the OpenSSL implementation of things to match the NSS
implementation so that callers	don't need to care which one is
	being used.

	* camel-tcp-stream-openssl.c: Implement CamelTcpStreamSSL, not
	CamelTcpStreamOpenSSL. Rename methods as well. Replace the
	camel-tcp-stream-openssl.h include with camel-tcp-stream-ssl.h.

        * camel-tcp-stream-openssl.h: Gone.

        * camel-tcp-stream-ssl.c: Add a note explaining that this
	implementation is only used for NSS, and that OpenSSL's
	implementation is in another file. (Should probably do some CVS
	renaming magic at some point.)

        * camel-http-stream.c (http_connect): Remove OpenSSL refs; the
        previously-NSS-specific code works for both now.

        * camel-remote-store.c: Likewise.

        * providers/smtp/camel-smtp-transport.c: Likewise.

        * providers/pop3/camel-pop3-store.c: Likewise.

        * Makefile.am (libcamelinclude_HEADERS): Remove
	camel-tcp-stream-openssl.h

svn path=/trunk/; revision=16093
2002-03-11 02:33:27 +00:00
e83a759e4e New stream filter that chomps excess trailing whitespace from the end of
2002-02-27  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-mime-filter-chomp.c (camel_mime_filter_chomp_new): New
	stream filter that chomps excess trailing whitespace from the end
	of the stream. This is needed to update the PGP/MIME code to
	comply with rfc3156.

	* camel-pgp-mime.c (camel_pgp_mime_part_verify): Don't attach a
	from filter, if it ain't from-filtered already, then we'll just be
	breaking stuff. To become rfc3156 compliant, add a chomp filter
	here.
	(camel_pgp_mime_part_sign): Add a chomp filter here too.

svn path=/trunk/; revision=15863
2002-02-27 23:45:28 +00:00
92d7dbf6ce Implementation of NTLM (aka "Secure Password Authentication") auth, taken
* camel-sasl-ntlm.c: Implementation of NTLM (aka "Secure Password
	Authentication") auth, taken from soup.

	* Makefile.am (libcamel_la_SOURCES, libcamel_la_HEADERS): Add
	camel-sasl-ntlm.

	* camel-sasl.c: Add refs to camel-sasl-ntlm.

	* providers/imap/camel-imap-store.c (try_auth): Use
	imap_next_word() to skip over the "+ " of the continuation rather
	than just "resp + 2" since Exchange (incorrectly) returns "+"
	instead of "+ " for an empty continuation response.

svn path=/trunk/; revision=15605
2002-02-08 01:56:45 +00:00
e111399fba Use camel_mime_parser_read to read internal parser data.
2002-02-04  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-http-stream.c (stream_read): Use camel_mime_parser_read to
	read internal parser data.
	(camel_http_stream_get_content_type): Implemented.

	* camel-mime-utils.c (header_decode_int): Made public.

svn path=/trunk/; revision=15571
2002-02-05 00:21:14 +00:00
79a377ddf2 Final cleanup for the CFLAGS and LIBS in the Makefiles.
svn path=/trunk/; revision=15486
2002-01-27 17:21:36 +00:00
e7f7d0a9a2 Remove some old cruft.
* Makefile.am: Remove some old cruft.

svn path=/trunk/; revision=15463
2002-01-24 23:44:00 +00:00
345d090ac8 Rewritten to use a cache for body searches when online. Will need some
2002-01-14  Not Zed  <NotZed@Ximian.com>

        * providers/imap/camel-imap-search.c (imap_body_contains):
        Rewritten to use a cache for body searches when online.  Will need
        some heavy testing but so far seems to be beneficial.

        * providers/imap/camel-imap-folder.c (imap_search_by_expression,
        search_by_uids): dont initialise search object here.
        (camel_imap_folder_new): Setup search object here with pointer to
        cache dir.

2001-12-01  Not Zed  <NotZed@Ximian.com>

        * camel-store-summary.[ch]: New class to store a store's folder
        list in.  Not yet completed.

svn path=/trunk/; revision=15314
2002-01-14 09:35:52 +00:00
d55058d663 only use major and minor version in the camel providerdir, not micro and nano
svn path=/trunk/; revision=15121
2001-12-17 17:59:47 +00:00
4bdf78f880 fix openssl linkage problem
svn path=/trunk/; revision=15089
2001-12-15 01:07:21 +00:00
b5e7713c8e Implements marking messages as "Need Reply".
Implements marking messages as "Need Reply".

2001-12-09  Jon Trowbridge  <trow@ximian.com>

	* mail-need-reply.xpm: Added a really, really ugly and
	awful icon to symbolize "message needs a reply".

	* Makefile.am (EXTRA_DIST): Added mail-need-reply.xpm.

2001-12-09  Jon Trowbridge  <trow@ximian.com>

	* camel-folder-summary.c: Add "NeedsReply" to the flag_names array
	for CAMEL_MESSAGE_NEEDS_REPLY.

	* camel-folder-summary.h: Added CAMEL_MESSAGE_NEEDS_REPLY flag.

2001-12-09  Jon Trowbridge  <trow@ximian.com>

	* vfoldertypes.xml: Add "Needs Reply" option to different status
	types.

	* filtertypes.xml: Add "Needs Reply" option to different status
	types.

2001-12-09  Jon Trowbridge  <trow@ximian.com>

	* message-list.c: #include "art/mail-need-reply.xpm".
	(ml_tree_value_at): Adjust magic numbers, show "Need Reply" icon
	if the message needs reply.
	(message_list_create_extras): Adjust magic numbers to add new
	icon.
	(on_click): Changed to toggle between unread, read, and need reply
	when the status icon is clicked.

	* mail-callbacks.c (mark_as_needing_reply): Added.
	(mark_as_not_needing_reply): Added.  Add "set" value to struct
	post_send_data.
	(composer_sent_cb): Use both "flags" and "set" elements of
	post_send_data when setting message flags.
	(mail_reply): Clear "Needs Reply" flag when we actually reply to a
	message.

	* folder-browser.c: Changed flag values to be given by
	bit-shifting (1<<5) vs. base-ten (32).  Added
	CAN_MARK_DOESNT_NEED_REPLY flag.  Added "Mark as Needing Reply"
	and "Mark as Not Needing Reply" elements to context menu.
	(on_right_click): Hide "Mark as (Not) Needing Reply" context menu
	elements as appropriate.

svn path=/trunk/; revision=14946
2001-12-10 03:50:36 +00:00
d46cb0fd8d Completely new implementation of NNTP.
2001-11-30  Not Zed  <NotZed@Ximian.com>

        * providers/nntp/camel-nntp-*.c:

        Completely new implementation of NNTP.

        Doesn't support subscriptions yet (lists all folders), but should
        be more reliable (faster?), and has an integrated cache.

        * camel-exception.c (camel_exception_new): Use e_memchunks for
        exception blocks.
        (camel_exception_free): Same.

        * camel-data-cache.[ch]: New object for managing on-disk caches of
        anything that can be stored in a camel-stream.

        * camel-file-utils.c (camel_file_util_mkdir): New function, just a
        nicer place to put this (than camel-store), should be removed from
        camel-store.
        (camel_file_util_safe_filename): New function to url-encode a
        filename.

        * camel-mime-parser.c (drop_states): New func to drop the parser
        state to initial state.
        (folder_scan_init_with_fd):
        (folder_scan_init_with_stream): Call above func to reset state if
        the stream is changed on us so we can change streams to reuse a
        parser object.

svn path=/trunk/; revision=14822
2001-11-30 03:09:38 +00:00
fc71161f50 New mime filter to convert plain text to html.
2001-11-16  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-mime-filter-tohtml.c (camel_mime_filter_tohtml_new): New
	mime filter to convert plain text to html.

svn path=/trunk/; revision=14737
2001-11-16 23:00:08 +00:00
c8c5e7d994 added $GNOME_INCLUDEDIR to INCLUDES, needed for latest libgnome, which
2001-10-22  Rodrigo Moya <rodrigo@ximian.com>

	* Makefile.am: added $GNOME_INCLUDEDIR to INCLUDES, needed for latest
	libgnome, which install headers in $(prefix)/gnome-1.0

svn path=/trunk/; revision=13878
2001-10-22 17:10:14 +00:00
dad441ba03 Remove the stripheader filter from the build.
2001-10-12  Jeffrey Stedfast  <fejj@ximian.com>

	* Makefile.am: Remove the stripheader filter from the build.

	* camel-mime-filter-stripheader.[c,h]: Removed.

	* providers/smtp/camel-smtp-transport.c (smtp_data): Check the
	return value of camel_stream_flush to make sure it flushed the
	data successfully before continuing. Don't use the stripheader
	filter, it was completely broken - instead remove the header and
	set it again after we send.

svn path=/trunk/; revision=13641
2001-10-12 22:45:10 +00:00
cca7709e68 Fix Ettore's fix.
2001-09-26  Jeffrey Stedfast  <fejj@ximian.com>

	* Makefile.am: Fix Ettore's fix.

svn path=/trunk/; revision=13154
2001-09-26 18:24:49 +00:00
efdd8e72f9 [Patch for Automake 1.5 compatibility pointed out by Richard
Boulton <richard@tartarus.org>, as per #9258.]

* providers/nntp/Makefile.am: Remove some commented parts that
make Automake 1.5 choke.

* Makefile.am (camel-lock-helper): Add $(EXEEXT) for Automake 1.5
compatibility.

svn path=/trunk/; revision=13137
2001-09-25 23:43:55 +00:00
411b2707bd Helpful install-exec-hook debugging output
2001-09-17  JP Rosevear  <jpr@ximian.com>

	* Makefile.am: Helpful install-exec-hook debugging output

svn path=/trunk/; revision=12901
2001-09-17 17:24:40 +00:00
efa43cbf6f use install hook instead of install rule to guarantee we run after
2001-09-14  JP Rosevear  <jpr@ximian.com>

	* Makefile.am: use install hook instead of install rule to
	guarantee we run after installation

2001-09-14  JP Rosevear  <jpr@ximian.com>

	* configure.in: remove unneeded conditionals

svn path=/trunk/; revision=12825
2001-09-14 19:26:23 +00:00
85f3f150b2 build a static camel for the addressbook conduit
2001-08-20  JP Rosevear  <jpr@ximian.com>

	* Makefile.am: build a static camel for the addressbook conduit

svn path=/trunk/; revision=12287
2001-08-20 13:22:23 +00:00
99e55fbc6b special case popb4smtp auth before we try and connect, and do the magic
2001-08-03  Not Zed  <NotZed@Ximian.com>

        * providers/smtp/camel-smtp-transport.c (smtp_connect): special
        case popb4smtp auth before we try and connect, and do the magic
        here first.

2001-08-02  Not Zed  <NotZed@Ximian.com>

        * providers/smtp/camel-smtp-transport.c (smtp_connect): Check for
        POPB4SMTP separate to the esmtp auth list.
        (smtp_auth): If creating the sasl object means it is
        already authenticated, then exit early.  Sort of 'clean hack' to
        help popb4smtp work.
        (smtp_auth): Unref the sasl object, clean up a memleak i think.

        * providers/smtp/camel-smtp-provider.c
        (camel_provider_module_init): Added POPB4SMTP auth type.

        * camel-sasl.c (camel_sasl_authtype): Added POPB4SMTP type.

        * camel-sasl-popb4smtp.c: New file for pop before smtp
        'authentication'.

        * Makefile.am (libcamel_la_SOURCES, HEADERS): Add
        camel-sasl-popb4smtp.[ch].

svn path=/trunk/; revision=11615
2001-08-03 15:33:57 +00:00
54e037a91c Let people install as non-root, but give them a bigass warning so they're
2001-07-13  Peter Williams  <peterw@ximian.com>

	* Makefile.am (install-exec-local): Let people install as non-root,
	but give them a bigass warning so they're not allowed to complain when
	it doesn't work right.

	* camel-remote-store.c (sync_remote_folder): New function:
	hash table callback.
	(remote_disconnect): If cleanly disconnecting, sync our folders. Fixes
	deadlocks on exit (folders syncing after store disconnects) and also makes
	sense.

svn path=/trunk/; revision=11090
2001-07-13 17:35:51 +00:00
b88f6b9593 Removed. (check_html_charset): Replaced with this.
2001-07-12  Not Zed  <NotZed@Ximian.com>

        * camel-mime-part-utils.c (extract_metatag_charset): Removed.
        (check_html_charset): Replaced with this.
        (simple_data_wrapper_construct_from_parser): Call
        check_html_charset if we dont have a charset on the content-type,
        and we have text/html data.
        (check_html_charset): We also need to do qp/base64 decoding
        ourselves, sigh.

        * camel-mime-utils.c (html_meta_param_list_decode): Removed.  This
        was very wrong, the rules for mail headers vastly different from
        rules for decoding html elements.
        (rfc2184_decode): Move the malloc inside the iconv_open worked,
        otherwise we have a memleak.

        * camel-mime-filter-html.c (camel_mime_filter_html_finalize, init,
        run, reset): Changed to use camelhtmlparser, and fixed a tiny
        memleak.

        * camel-html-parser.c: Made the html indexer tokeniser re-usable.
        ONLY TO BE USED INTERNAL TO CAMEL HOWEVER.
        (tokenise_step): Slight fix to non-quoted values.

svn path=/trunk/; revision=11028
2001-07-12 05:02:11 +00:00
6ffa930086 Add a CamelMimeFilterStripHeader that removes a header from mime output. Used
by sendmail to strip the BCC from the email while still sending to the BCC
recipients.

camel:

2001-06-28  Peter Williams  <peterw@ximian.com>

        * camel-mime-filter-stripheader.c: New file. Filter that strips a
        header from mime output.

        * camel-mime-filter-stripheader.h: New file. Header for the above.

        * providers/smtp/camel-smtp-transport.c (smtp_data): Use the stripheader
        filter to remove the "Bcc" header.

        * Makefile.am: Add the stripheader files.

        * tests/lib/Makefile.am (INCLUDES): Get this to compile again.

        * tests/mime-filter/test-stripheader.c: New file. Test suite for
        the CamelMimeFilterStripHeader.

        * tests/mime-filter/Makefile.am: New test section: mime filters.

mail:

2001-06-28  Peter Williams  <peterw@ximian.com>

        * mail-ops.c (mail_send_message): Revert fejj's Bcc header removal;
        this unsets the BCC recipients and so doesn't send to the Bcc'd
        people at all.

svn path=/trunk/; revision=10576
2001-06-28 20:35:43 +00:00
a53478f0bf Set camel-lock-help setgid or setuid as needed
* Makefile.am (install-exec-local): Set camel-lock-help setgid or
	setuid as needed

svn path=/trunk/; revision=10267
2001-06-18 18:17:19 +00:00