platform/upstream/evolution-data-server.git
22 years agoA pretty empty store implementation to be the parent store of a
Jeffrey Stedfast [Tue, 12 Mar 2002 00:24:03 +0000 (00:24 +0000)]
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.

22 years agoAllow any leaf part to be a message/rfc822 part. (digest_get_uids):
Jeffrey Stedfast [Mon, 11 Mar 2002 23:38:42 +0000 (23:38 +0000)]
Allow any leaf part to be a message/rfc822 part. (digest_get_uids):

2002-03-11  Jeffrey Stedfast  <fejj@ximian.com>

* camel-digest-folder.c (camel_digest_folder_new): Allow any leaf
part to be a message/rfc822 part.
(digest_get_uids): Recurse the mime structure and add all
message/rfc822 parts and use a uid scheme similar to IMAP's mime
part naming convention.
(digest_get_message): Decode the uid to get the correct mime part.

22 years agoChange the order of the mailing list magic patterns so that the more
Ettore Perazzoli [Mon, 11 Mar 2002 19:25:42 +0000 (19:25 +0000)]
Change the order of the mailing list magic patterns so that the more

* camel-mime-utils.c: Change the order of the mailing list magic
patterns so that the more mailing-list specific ones are on the
top.

22 years agooops, musta backspaced over a brace?
Jeffrey Stedfast [Mon, 11 Mar 2002 17:06:27 +0000 (17:06 +0000)]
oops, musta backspaced over a brace?

22 years agoThese fixes should fix bug #21737.
Jeffrey Stedfast [Mon, 11 Mar 2002 17:01:15 +0000 (17:01 +0000)]
These fixes should fix bug #21737.

2002-03-11  Jeffrey Stedfast  <fejj@ximian.com>

These fixes should fix bug #21737.

* providers/smtp/camel-smtp-transport.c
(connect_to_server_wrapper): Same as with the POP code.

* providers/pop3/camel-pop3-store.c (connect_to_server_wrapper):
Slight restructuring of the if-statements for the USE_SSL_ALWAYS
case so that we can't possibly return TRUE unless we really did
connect successfully.

22 years ago Rename the OpenSSL implementation of things to match the NSS
Dan Winship [Mon, 11 Mar 2002 02:33:27 +0000 (02:33 +0000)]
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

22 years agoRemove this: it couldn't be generically used, because different subclasses
Dan Winship [Mon, 11 Mar 2002 00:53:49 +0000 (00:53 +0000)]
Remove this: it couldn't be generically used, because different subclasses

        * camel-tcp-stream.c (camel_tcp_stream_get_socket): Remove this:
it couldn't be generically used, because different subclasses
returned entirely different types of data.
(camel_tcp_stream_get_local_address,
camel_tcp_stream_get_remote_address): Add these to replace what
get_socket was being used for.
(camel_tcp_address_new, camel_tcp_address_free): Utility functions
for get_{local,remote}_address.

* providers/smtp/camel-smtp-transport.c: Change localaddr to a
        CamelTcpAddress *.
        (connect_to_server): Call camel_tcp_stream_get_local_address to
get the local IP address.
        (smtp_disconnect): free localaddr.
        (smtp_helo): Update for localaddr change.

        * camel-tcp-stream-raw.c (stream_get_socket): Remove
(stream_get_local_address, stream_get_remote_address): Implement.

* camel-tcp-stream-ssl.c (stream_get_socket): Remove
(stream_get_local_address, stream_get_remote_address): Implement.

        * camel-tcp-stream-openssl.c (stream_get_socket): Remove
(stream_get_local_address, stream_get_remote_address): Implement.

22 years agoDon't call camel_remote_store_get_authtypes since we no longer subclass
Jeffrey Stedfast [Fri, 8 Mar 2002 23:43:43 +0000 (23:43 +0000)]
Don't call camel_remote_store_get_authtypes since we no longer subclass

2002-03-08  Jeffrey Stedfast  <fejj@ximian.com>

* providers/pop3/camel-pop3-provider.c
(camel_provider_module_init): Don't call
camel_remote_store_get_authtypes since we no longer subclass
camel-remote-store.

* providers/pop3/camel-pop3-engine.c: Added STARTTLS to the
capabilities to look for.
(camel_pop3_engine_reget_capabilities): New function to re-get
capabilities.

* providers/pop3/camel-pop3-store.c: Updated to not subclass
CamelRemoteStore.
(connect_to_server): Rewritten to not depend on CamelRemoteStore's
connect implementation. Also added support for STLS (aka
STARTTLS).

22 years agoAdd support for hash type RIPEMD160.
Jeffrey Stedfast [Thu, 7 Mar 2002 20:11:35 +0000 (20:11 +0000)]
Add support for hash type RIPEMD160.

2002-03-07  Jeffrey Stedfast  <fejj@ximian.com>

* camel-pgp-mime.c (camel_pgp_mime_part_sign): Add support for
hash type RIPEMD160.

* camel-cipher-context.h: Add RIPEMD160 hash type.

* camel-pgp-context.c (pgp_sign): Updated to consider hash
function for pgp5 and pgp6.
(pgp_clearsign): Same.

22 years agoAdd a timeout on the select. (stream_write): Same.
Jeffrey Stedfast [Thu, 7 Mar 2002 16:24:19 +0000 (16:24 +0000)]
Add a timeout on the select. (stream_write): Same.

2002-03-07  Jeffrey Stedfast  <fejj@ximian.com>

* camel-tcp-stream-openssl.c (stream_read): Add a timeout on the
select.
(stream_write): Same.

22 years agoFix to work with OpenSSL.
Jeffrey Stedfast [Thu, 7 Mar 2002 00:15:44 +0000 (00:15 +0000)]
Fix to work with OpenSSL.

2002-03-06  Jeffrey Stedfast  <fejj@ximian.com>

* providers/smtp/camel-smtp-transport.c (connect_to_server): Fix
to work with OpenSSL.

22 years agocompile fixes. (camel_tcp_stream_openssl_enable_ssl): Check to make sure
Jeffrey Stedfast [Wed, 6 Mar 2002 22:32:17 +0000 (22:32 +0000)]
compile fixes. (camel_tcp_stream_openssl_enable_ssl): Check to make sure

2002-03-06  Jeffrey Stedfast  <fejj@ximian.com>

* camel-tcp-stream-openssl.c: compile fixes.
(camel_tcp_stream_openssl_enable_ssl): Check to make sure that the
sockfd != -1, it's not enough to check that it is non-zero. Also
set the sockfd to -1 on fail (open_ssl_connection will close the
sockfd on fail).

22 years agoMake this compile.
Dan Winship [Wed, 6 Mar 2002 19:14:50 +0000 (19:14 +0000)]
Make this compile.

* providers/smtp/camel-smtp-transport.c (smtp_construct): Make
this compile.

22 years agotreat "" as "always" to maintain compatablity with old config settings
Jeffrey Stedfast [Wed, 6 Mar 2002 01:43:22 +0000 (01:43 +0000)]
treat "" as "always" to maintain compatablity with old config settings

22 years agoRemoved. Glory glory hallelujah! (ssl_bad_cert): No longer calls
Jeffrey Stedfast [Wed, 6 Mar 2002 00:54:22 +0000 (00:54 +0000)]
Removed. Glory glory hallelujah! (ssl_bad_cert): No longer calls

2002-03-05  Jeffrey Stedfast  <fejj@ximian.com>

* camel-tcp-stream-ssl.c (save_ssl_cert): Removed. Glory glory
hallelujah!
(ssl_bad_cert): No longer calls ssl_save_cert or
ssl_cert_is_saved.

22 years agoStart the ssl stream off in non-ssl mode (useful for STARTTLS).
Jeffrey Stedfast [Wed, 6 Mar 2002 00:33:37 +0000 (00:33 +0000)]
Start the ssl stream off in non-ssl mode (useful for STARTTLS).

2002-03-05  Jeffrey Stedfast  <fejj@ximian.com>

* camel-tcp-stream-openssl.c (camel_tcp_stream_openssl_new_raw):
Start the ssl stream off in non-ssl mode (useful for STARTTLS).
(camel_tcp_stream_openssl_enable_ssl): New function to toggle an
ssl stream into ssl mode.
(open_ssl_connection): Close the sockfd on fail so our caller
doesn't have to - this also allows us to save the original errno.
(stream_connect): If we want ssl mode, do our ssl stuff.
(camel_tcp_stream_openssl_class_init): Init some SSL stuff here
instead of in open_ssl_connection since these only ever need to be
called once.
(stream_read): Only use SSL_read if we are in ssl mode.
(stream_write): Only use SSL_write if we are in ssl mode.

* providers/smtp/camel-smtp-transport.c (smtp_helo): Check for the
STARTTLS extension.
(connect_to_server): Try to use STARTTLS whenever possible rather
than the old way of doing things.
(connect_to_server_wrapper): Wrapper around connect_to_server() to
first try STARTTLS and then attempt normal SSL mode if we can't
connect via STARTTLS.

* camel-tcp-stream-ssl.c (camel_tcp_stream_ssl_enable_ssl): New
function to toggle an ssl stream into ssl mode.
(camel_tcp_stream_ssl_new_raw): Start the ssl stream off in
non-ssl mode (useful for STARTTLS).
(stream_connect): Only connect in SSL mode if required.

22 years agoAdd c++ armoring.
Jeffrey Stedfast [Fri, 1 Mar 2002 21:39:17 +0000 (21:39 +0000)]
Add c++ armoring.

2002-03-01  Jeffrey Stedfast  <fejj@ximian.com>

* camel-vtrash-folder.h:
* camel-vee-store.h:
* camel-vee-folder.h:
* camel-stream-null.h:
* camel-stream-filter.h:
* camel-store-summary.h:
* camel-news-address.h:
* camel-mime-utils.h:
* camel-mime-parser.h:
* camel-mime-filter-save.h:
* camel-mime-filter-linewrap.h:
* camel-mime-filter-index.h:
* camel-mime-filter-html.h:
* camel-mime-filter.h:
* camel-mime-filter-from.h:
* camel-mime-filter-crlf.h:
* camel-mime-filter-chomp.h:
* camel-mime-filter-charset.h:
* camel-mime-filter-bestenc.h:
* camel-mime-filter-basic.h:
* camel-internet-address.h:
* camel-folder-thread.h:
* camel-folder-summary.h:
* camel-folder-search.h:
* camel-filter-driver.h:
* camel-charset-map.h:
* camel-address.h: Add c++ armoring.

* camel-object.h: s/class/klass

22 years agoReverted my pgp/mime fixes here too.
Jeffrey Stedfast [Fri, 1 Mar 2002 20:30:15 +0000 (20:30 +0000)]
Reverted my pgp/mime fixes here too.

2002-03-01  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-part-utils.c
(camel_mime_part_construct_content_from_parser): Reverted my
pgp/mime fixes here too.

* camel-mime-part.c (write_to_stream): Removed my pgp/mime raw
stream hack, this is causing problems such as some messages to not
displaying, view->source not working at all, etc.

22 years agoChanged offset variables from int's to off_t's since the system may
Jeffrey Stedfast [Thu, 28 Feb 2002 20:56:42 +0000 (20:56 +0000)]
Changed offset variables from int's to off_t's since the system may

2002-02-28  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-parser.c: Changed offset variables from int's to
off_t's since the system may support large files.

22 years agoRearrange the save filter stuff so that we save raw streams for all mime
Jeffrey Stedfast [Thu, 28 Feb 2002 20:37:11 +0000 (20:37 +0000)]
Rearrange the save filter stuff so that we save raw streams for all mime

2002-02-28  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-part-utils.c
(camel_mime_part_construct_content_from_parser): Rearrange the
save filter stuff so that we save raw streams for all mime
parts. If the mime part turns out to be a multupart, then don't
bother saving the raw stream, we only need to save the raw stream
for leaf parts.

22 years agoonly save raw streams for leaf parts.
Jeffrey Stedfast [Thu, 28 Feb 2002 03:09:07 +0000 (03:09 +0000)]
only save raw streams for leaf parts.

22 years agoDon't #include camel-mime-filter-save.h, we don't use it.
Jeffrey Stedfast [Thu, 28 Feb 2002 02:28:12 +0000 (02:28 +0000)]
Don't #include camel-mime-filter-save.h, we don't use it.

2002-02-27  Jeffrey Stedfast  <fejj@ximian.com>

* camel-folder-summary.h: Don't #include camel-mime-filter-save.h,
we don't use it.

* camel-file-utils.c: Fixed a few 'might be used uninitialized'
warnings which were real problems.

* camel-mime-part-utils.c
(camel_mime_part_construct_content_from_parser): Save the raw mime
stream for any/all signed parts.

* camel-mime-part.c (camel_mime_part_init): Initialize our raw
stream to NULL.
(camel_mime_part_finalize): Unref our raw stream, if we have one.
(write_to_stream): If we have a raw stream, write that out instead
of re-encoding.

* camel-mime-filter-save.[c,h]: Rewritten to save to a stream
rather than a file.

22 years agoUse the FOLD_SIZE as a recommended folding size, but add a new
Not Zed [Thu, 28 Feb 2002 01:09:05 +0000 (01:09 +0000)]
Use the FOLD_SIZE as a recommended folding size, but add a new

2002-02-28  Not Zed  <NotZed@Ximian.com>

        * camel-mime-utils.c (header_fold): Use the FOLD_SIZE as a
        recommended folding size, but add a new FOLD_MAX_SIZE (=998, the
        smtp max line size) as the hard limit for any output.

22 years agoNew stream filter that chomps excess trailing whitespace from the end of
Jeffrey Stedfast [Wed, 27 Feb 2002 23:45:28 +0000 (23:45 +0000)]
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.

22 years agoChanged header formatted table to contain a pointer to an output function,
Not Zed [Wed, 27 Feb 2002 03:21:51 +0000 (03:21 +0000)]
Changed header formatted table to contain a pointer to an output function,

2002-02-27  Not Zed  <NotZed@Ximian.com>

        * camel-mime-part.c (init_header_name_table): Changed header
        formatted table to contain a pointer to an output function, and
        added in-reply-to and references headers.
        (write_references): New function to write out references header,
        folded properly.  It only approximates based on the last >, but it
        should be adequate and will also handle invalid headers.
        (write_fold): Function to write out headers folded.  Since this is
        the default it isn't required.
        (write_raw): Write out an already formatted header, e.g. most of
        the rest.
        (write_to_stream): Lookup header output function, if we have one,
        use that, otherwise fold header using basic (dumb) function.

        This is all for #14779.  A better fix is probably do have the
        headers always stored formatted, but that can wait.

22 years agoAllow all multiparts that contain message/rfc822 attachments.
Jeffrey Stedfast [Mon, 25 Feb 2002 21:26:24 +0000 (21:26 +0000)]
Allow all multiparts that contain message/rfc822 attachments.

2002-02-25  Jeffrey Stedfast  <fejj@ximian.com>

* camel-digest-folder.c (camel_digest_folder_new): Allow all
multiparts that contain message/rfc822 attachments.
(digest_get_uids): Only assign uids to message parts.

22 years agoSet the 'name' parameter on the Content-Type too. Fixes bug #20779.
Jeffrey Stedfast [Fri, 22 Feb 2002 22:37:09 +0000 (22:37 +0000)]
Set the 'name' parameter on the Content-Type too. Fixes bug #20779.

2002-02-22  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-part.c (camel_mime_part_set_filename): Set the 'name'
parameter on the Content-Type too. Fixes bug #20779.

22 years agoPass --always-trust to gpg (requested by users). (pgp_clearsign): Same.
Jeffrey Stedfast [Thu, 14 Feb 2002 23:44:21 +0000 (23:44 +0000)]
Pass --always-trust to gpg (requested by users). (pgp_clearsign): Same.

2002-02-14  Jeffrey Stedfast  <fejj@ximian.com>

* camel-pgp-context.c (pgp_sign): Pass --always-trust to gpg
(requested by users).
(pgp_clearsign): Same.
(pgp_encrypt): Here too.

22 years agoXimian is spelled Ximian, not Ximain. :-)
Jeffrey Stedfast [Thu, 14 Feb 2002 19:13:09 +0000 (19:13 +0000)]
Ximian is spelled Ximian, not Ximain. :-)

22 years agoSince the AUTH token sometimes uses '=' instead of whitespace, don't use
Jeffrey Stedfast [Tue, 12 Feb 2002 20:39:54 +0000 (20:39 +0000)]
Since the AUTH token sometimes uses '=' instead of whitespace, don't use

2002-02-12  Jeffrey Stedfast  <fejj@ximian.com>

* providers/smtp/camel-smtp-transport.c (smtp_helo): Since the
AUTH token sometimes uses '=' instead of whitespace, don't use
smtp_token_next here.

22 years agoDuh, when we grab the apop stamp it needs to include the <> as well, I
Not Zed [Sat, 9 Feb 2002 11:31:18 +0000 (11:31 +0000)]
Duh, when we grab the apop stamp it needs to include the <> as well, I

2002-02-09  Not Zed  <NotZed@Ximian.com>

        * providers/pop3/camel-pop3-engine.c (get_capabilities): Duh, when
        we grab the apop stamp it needs to include the <> as well, I even
        read the rfc, silly me.

        * providers/pop3/camel-pop3-store.c (pop3_try_authenticate): Doh,
        when iterating the authtype list, it helps to goto the next node.
        Found with help from miles.

22 years ago Removed some <<< stuff i missed.
Michael Zucci [Fri, 8 Feb 2002 02:15:56 +0000 (02:15 +0000)]
Removed some <<< stuff i missed.

22 years agoThe day number has to be 2 chars wide, space filled to work properly with
Not Zed [Fri, 8 Feb 2002 02:10:46 +0000 (02:10 +0000)]
The day number has to be 2 chars wide, space filled to work properly with

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

        * providers/local/camel-spool-summary.c
        (camel_spool_summary_build_from): The day number has to be 2 chars
        wide, space filled to work properly with pine, etc.

        * providers/local/camel-spoold-store.[ch]: new type of provider
        'spool directory', which lets you view external mbox dirs without
        adding any extra cruft.  Perhaps it should use . files to store
        summaries?  Still a bit experimental, there's a warning when you
        select it in the account editor.  Finished off most of #1185.
        Can't rename or move folders.

        * camel-mime-utils.c (header_decode_date): If the date is
        100->1900 then we actually want to use it as the year in the tm
        struct, not year+100.  e.g. year 102 -> 2002, not 2102.

2002-02-07  Not Zed  <NotZed@Ximian.com>

        * providers/local/camel-spool-store.c (get_folder): Pass path into
        spool_folder_new.

        * providers/local/camel-spool-folder.c (camel_spool_folder_new):
        (camel_spool_folder_construct): Take the full path to the folder
        and use that as the file path, independent of the full_name we
        use.

2002-02-07  Not Zed  <NotZed@Ximian.com>

        * providers/local/camel-local-provider.c: Added new type, spoold
        provider, spoold: for local directories.

        * providers/imap/camel-imap-store.c (get_one_folder_offline):
        Create offline uri's in a compatible manner to online ones.

22 years agoImplementation of NTLM (aka "Secure Password Authentication") auth, taken
Dan Winship [Fri, 8 Feb 2002 01:56:45 +0000 (01:56 +0000)]
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.

22 years agoRemove the CAMEL_MESSAGE_NEEDS_REPLY flag, we no longer will be using
Jeffrey Stedfast [Thu, 7 Feb 2002 00:42:30 +0000 (00:42 +0000)]
Remove the CAMEL_MESSAGE_NEEDS_REPLY flag, we no longer will be using

2002-02-06  Jeffrey Stedfast  <fejj@ximian.com>

* camel-folder-summary.h: Remove the CAMEL_MESSAGE_NEEDS_REPLY
flag, we no longer will be using this.

22 years agoUse camel_mime_parser_read to read internal parser data.
Jeffrey Stedfast [Tue, 5 Feb 2002 00:42:52 +0000 (00:42 +0000)]
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.
(http_method_invoke): Use HTTP/1.0 instead of 1.1

22 years agoUse camel_mime_parser_read to read internal parser data.
Jeffrey Stedfast [Tue, 5 Feb 2002 00:21:14 +0000 (00:21 +0000)]
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.

22 years agoAdded. New stream for HTTP requests (currently supported are GET and
Jeffrey Stedfast [Mon, 4 Feb 2002 19:59:33 +0000 (19:59 +0000)]
Added. New stream for HTTP requests (currently supported are GET and

2002-02-04  Jeffrey Stedfast  <fejj@ximian.com>

* camel-http-stream.[c,h]: Added. New stream for HTTP requests
(currently supported are GET and HEAD).

* camel-tcp-stream-ssl.c (stream_connect): Call set_errno
appropriately.

22 years agoCall set_errno appropriately.
Jeffrey Stedfast [Mon, 4 Feb 2002 19:58:02 +0000 (19:58 +0000)]
Call set_errno appropriately.

2002-02-04  Jeffrey Stedfast  <fejj@ximian.com>

* camel-tcp-stream-ssl.c (stream_connect): Call set_errno
appropriately.

22 years agoOops, this was converting foo@[blah] to foo@[ blah ], fixed.
Not Zed [Thu, 31 Jan 2002 02:30:36 +0000 (02:30 +0000)]
Oops, this was converting foo@[blah] to foo@[ blah ], fixed.

2002-01-31  Not Zed  <NotZed@Ximian.com>

        * camel-mime-utils.c (header_decode_domain): Oops, this was
        converting foo@[blah] to foo@[ blah ], fixed.

22 years agoUse "pop" instead of "pop3" so current configurations continue to work.
Jeffrey Stedfast [Wed, 30 Jan 2002 23:05:36 +0000 (23:05 +0000)]
Use "pop" instead of "pop3" so current configurations continue to work.

2002-01-30  Jeffrey Stedfast  <fejj@ximian.com>

* providers/pop3/camel-pop3-provider.c: Use "pop" instead of
"pop3" so current configurations continue to work.

22 years agoChanged name from "NT Login" to simply "Login".
Not Zed [Wed, 30 Jan 2002 05:14:48 +0000 (05:14 +0000)]
Changed name from "NT Login" to simply "Login".

2002-01-30  Not Zed  <NotZed@Ximian.com>

        * camel-sasl-login.c: Changed name from "NT Login" to simply
        "Login".

        * providers/pop3/*: Entirely new pop implmentation, supporting
        pipelining.

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

        * camel-data-cache.c (free_busy): We dont want to unref the
        stream, instead, stop listening to the finalised events, and free
        the path only.

2002-01-25  Not Zed  <NotZed@Ximian.com>

        * camel-data-cache.c (stream_finalised): Remove the object from
        the busy_stream hashtable, not the busy_path hashtable.

22 years agoAdded more kludge to an existing Exchange IMAP 5.5 kludge to work around
Jeffrey Stedfast [Tue, 29 Jan 2002 23:13:36 +0000 (23:13 +0000)]
Added more kludge to an existing Exchange IMAP 5.5 kludge to work around

2002-01-29  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (imap_update_summary): Added
more kludge to an existing Exchange IMAP 5.5 kludge to work around
it returning multiple messages with the same UIDs.

22 years agoHandle Resent headers too.
Jeffrey Stedfast [Tue, 29 Jan 2002 04:38:08 +0000 (04:38 +0000)]
Handle Resent headers too.

2002-01-28  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-message.c (process_header): Handle Resent headers
too.

* camel-mime-message.h: Added Resent-* #defines.

22 years agoAdded Resent-* #defines.
Jeffrey Stedfast [Tue, 29 Jan 2002 03:48:18 +0000 (03:48 +0000)]
Added Resent-* #defines.

2002-01-28  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-message.h: Added Resent-* #defines.

22 years agoUse while (node->next) instead of while (node)
Jeffrey Stedfast [Tue, 29 Jan 2002 01:33:51 +0000 (01:33 +0000)]
Use while (node->next) instead of while (node)

2002-01-28  Jeffrey Stedfast  <fejj@ximian.com>

* camel-filter-driver.c (camel_filter_driver_remove_rule_by_name):
Use while (node->next) instead of while (node)

22 years agoNew function to decode an enhanced status code. (smtp_set_exception): Sets
Jeffrey Stedfast [Tue, 29 Jan 2002 00:31:58 +0000 (00:31 +0000)]
New function to decode an enhanced status code. (smtp_set_exception): Sets

2002-01-28  Jeffrey Stedfast  <fejj@ximian.com>

* providers/smtp/camel-smtp-transport.c (smtp_decode_status_code):
New function to decode an enhanced status code.
(smtp_set_exception): Sets an exception based on the
Enhanced-Status-Code.
(esmtp_get_authtypes): Don't diplicate the key in the hash since
the key and value are the same.
(smtp_rcpt): Include the failed recipient in the error message to
be more helpful to the user.

* camel-mime-utils.c (hex_decode): Make sure to allocate enough
for the NUL byte.

22 years agoUse flags rather than a bunch of gboolean variables. (smtp_connect): Same.
Jeffrey Stedfast [Mon, 28 Jan 2002 22:10:44 +0000 (22:10 +0000)]
Use flags rather than a bunch of gboolean variables. (smtp_connect): Same.

2002-01-28  Jeffrey Stedfast  <fejj@ximian.com>

* providers/smtp/camel-smtp-transport.c (smtp_construct):
(connect_to_server): Use flags rather than a bunch of gboolean
variables.
(smtp_connect): Same.
(smtp_mail): Here too. Use the enhanced status codes if available.
(smtp_data): And again here.
(smtp_helo): Finally here. Also detect the ENHANCEDSTATUSCODES
extension.
(smtp_rcpt): Use the enhanced status codes if available.
(smtp_rset): Here too.
(smtp_quit): And finally here.

* camel-transport.h: Removed gboolean supports_8bit since this is
pretty local to only SMTP for now.

22 years agoFinal cleanup for the CFLAGS and LIBS in the Makefiles.
Ettore Perazzoli [Sun, 27 Jan 2002 17:21:20 +0000 (17:21 +0000)]
Final cleanup for the CFLAGS and LIBS in the Makefiles.

22 years agoRemove some old cruft.
Ettore Perazzoli [Thu, 24 Jan 2002 23:44:00 +0000 (23:44 +0000)]
Remove some old cruft.

* Makefile.am: Remove some old cruft.

22 years agoClean up some of the Makefiles so we dont' link every library multiple
Ettore Perazzoli [Thu, 24 Jan 2002 23:16:13 +0000 (23:16 +0000)]
Clean up some of the Makefiles so we dont' link every library multiple
times, causing big libtool 1.4 pain.

22 years agoCall the beep callback function.
Jeffrey Stedfast [Thu, 24 Jan 2002 21:04:17 +0000 (21:04 +0000)]
Call the beep callback function.

2002-01-24  Jeffrey Stedfast  <fejj@ximian.com>

* camel-filter-driver.c (do_beep): Call the beep callback
function.
(camel_filter_driver_set_system_beep_func): New function to set
the beep callback.

22 years agoNew function to remove a filter rule by name.
Jeffrey Stedfast [Wed, 23 Jan 2002 00:10:42 +0000 (00:10 +0000)]
New function to remove a filter rule by name.

2002-01-22  Jeffrey Stedfast  <fejj@ximian.com>

* camel-filter-driver.c (camel_filter_driver_remove_rule_by_name):
New function to remove a filter rule by name.

22 years agoAs a temporary solution, just printf ("\a"); to make a beep :-)
Jeffrey Stedfast [Mon, 21 Jan 2002 23:28:20 +0000 (23:28 +0000)]
As a temporary solution, just printf ("\a"); to make a beep :-)

2002-01-21  Jeffrey Stedfast  <fejj@ximian.com>

* camel-filter-driver.c (do_beep): As a temporary solution, just
printf ("\a"); to make a beep :-)

* providers/imap/camel-imap-command.c
(imap_command_strdup_vprintf): Encode the mailbox to UTF-7 here.

* providers/imap/camel-imap-utils.c (imap_parse_list_response):
Decode the mailbox name as we parse the list response.
(imap_mailbox_decode): It's only an illegal mailbox name if it
didn't switch back to US-ASCII mode.

22 years agoNew function to decode an IMAP mailbox name from modified UTF-7 encoding
Jeffrey Stedfast [Sat, 19 Jan 2002 00:03:05 +0000 (00:03 +0000)]
New function to decode an IMAP mailbox name from modified UTF-7 encoding

2002-01-18  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-utils.c (imap_mailbox_decode): New
function to decode an IMAP mailbox name from modified UTF-7
encoding to UTF-8.
(imap_mailbox_encode): New function to convert a mailbox name from
UTF-8 to IMAP's modified UTF-7 encoding.

22 years agoStop uudecoding once the CAMEL_UUDECODE_STATE_END state bit gets set. Set
Jeffrey Stedfast [Thu, 17 Jan 2002 19:21:11 +0000 (19:21 +0000)]
Stop uudecoding once the CAMEL_UUDECODE_STATE_END state bit gets set. Set

2002-01-17  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-filter-basic.c (filter): Stop uudecoding once the
CAMEL_UUDECODE_STATE_END state bit gets set. Set the
CAMEL_UUDECODE_STATE_BEGIN state bit once we find the begin line.
(reset): No longer have uu_begin or uulen state variables, these
are now stuffed into a single state variable.

* camel-mime-utils.c (uudecode_step): No longer needs a uulen
argument and also keeps track of whether or not the end of the
encoded data has been found in 'state'.
(uuencode_step): Now stuffs uulen into state so that the uulen
argument is no longer needed.
(uuencode_close): Same.

22 years agoIf we don't want to corrupt the uuencoded data by overwriting it with
Jeffrey Stedfast [Wed, 16 Jan 2002 23:38:32 +0000 (23:38 +0000)]
If we don't want to corrupt the uuencoded data by overwriting it with

2002-01-16  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-filter-basic.c (filter): If we don't want to corrupt
the uuencoded data by overwriting it with base64 decoded data
afterward, we need to add a break statement!

* camel-folder-summary.c (summary_build_content_info): Add code to
add a uu filter.
(camel_folder_summary_finalize): Unref the uuencode filter.

22 years agoFixed slight logic error to find the uuencode begin line. Fixes bug
Jeffrey Stedfast [Wed, 16 Jan 2002 21:44:54 +0000 (21:44 +0000)]
Fixed slight logic error to find the uuencode begin line. Fixes bug

2002-01-16  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-filter-basic.c (filter): Fixed slight logic error to
find the uuencode begin line. Fixes bug #18754.

22 years agoUpdated to match the new send_to API. (smtp_send): Get the from address
Jeffrey Stedfast [Tue, 15 Jan 2002 19:22:14 +0000 (19:22 +0000)]
Updated to match the new send_to API. (smtp_send): Get the from address

2002-01-15  Jeffrey Stedfast  <fejj@ximian.com>

* providers/smtp/camel-smtp-transport.c (smtp_send_to): Updated to
match the new send_to API.
(smtp_send): Get the from address and pass that along to
smtp_send_to().

* providers/sendmail/camel-sendmail-transport.c
(sendmail_send_to): Updated to match the new send_to API.

* camel-transport.c (camel_transport_send_to): Now takes a from
argument too.

22 years agoSort the needheaders UID array and fixed to respect the UID_SET_LIMIT.
Jeffrey Stedfast [Tue, 15 Jan 2002 18:58:24 +0000 (18:58 +0000)]
Sort the needheaders UID array and fixed to respect the UID_SET_LIMIT.

2002-01-15  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (imap_update_summary): Sort
the needheaders UID array and fixed to respect the
UID_SET_LIMIT. This should now finish the fixification of bug
#2529. There's still the possible issue that a command-line (The
only command-line I can think of that can still be too long is a
SEARCH command, but this can't possibly be fixed until we rewrite
the imap code to use Zucchi's ImapEngine idea).

22 years agoUpdated to use the new imap_uid_array_to_set() interface.
Jeffrey Stedfast [Mon, 14 Jan 2002 20:14:15 +0000 (20:14 +0000)]
Updated to use the new imap_uid_array_to_set() interface.

2002-01-14  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (imap_expunge_uids_online):
Updated to use the new imap_uid_array_to_set() interface.
(imap_expunge_uids_resyncing): Same.
(do_copy): Here too.
(imap_update_summary): Added a FIXME comment to rewrite allowing
for a uid-set limitation.
(get_matching): Copy some of the logic over from
imap_uid_adday_to_set() to limit the length of the uid-set string.
(imap_sync_online): Added a comment to explain what is going on
with get_matching() since the behavior has changed slightly.

* providers/imap/camel-imap-utils.c (imap_uid_array_to_set):
Modify the interface so that we can limit the size of the uid set
string returned.

22 years agoRewritten to use a cache for body searches when online. Will need some
Not Zed [Mon, 14 Jan 2002 09:35:52 +0000 (09:35 +0000)]
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.

22 years agoKludge around a bug in Exchange 5.5 that reports 2 messages with the same
Jeffrey Stedfast [Fri, 11 Jan 2002 23:47:29 +0000 (23:47 +0000)]
Kludge around a bug in Exchange 5.5 that reports 2 messages with the same

2002-01-11  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (imap_update_summary): Kludge
around a bug in Exchange 5.5 that reports 2 messages with the same
UID. Fixes bug #17694. Replaces the fix from yesterday.

22 years agoIf PATH_MAX doesn't exist, use _POSIX_PATH_MAX.
Jeffrey Stedfast [Fri, 11 Jan 2002 01:53:17 +0000 (01:53 +0000)]
If PATH_MAX doesn't exist, use _POSIX_PATH_MAX.

2002-01-10  Jeffrey Stedfast  <fejj@ximian.com>

* providers/local/camel-local-folder.c: If PATH_MAX doesn't exist,
use _POSIX_PATH_MAX.

22 years agoIf mi is NULL, don't bother updating it. Should fix bug #17694.
Jeffrey Stedfast [Thu, 10 Jan 2002 23:15:45 +0000 (23:15 +0000)]
If mi is NULL, don't bother updating it. Should fix bug #17694.

2002-01-10  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (imap_update_summary): If mi
is NULL, don't bother updating it. Should fix bug #17694.

22 years ago#include camel-mime-filter-tohtml.h
Jeffrey Stedfast [Thu, 10 Jan 2002 20:35:38 +0000 (20:35 +0000)]
#include camel-mime-filter-tohtml.h

2002-01-10  Jeffrey Stedfast  <fejj@ximian.com>

* camel.h: #include camel-mime-filter-tohtml.h

22 years agoKludge around Microsoft Exchange 5.5 (bug #5348) by forgetting our
Jeffrey Stedfast [Thu, 10 Jan 2002 19:51:10 +0000 (19:51 +0000)]
Kludge around Microsoft Exchange 5.5 (bug #5348) by forgetting our

2002-01-10  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (imap_update_summary): Kludge
around Microsoft Exchange 5.5 (bug #5348) by forgetting our
currently selected folder and re-SELECTing it so that the Exchange
server has a chance to realise it has new messages.

22 years agofixed changelog
Jeffrey Stedfast [Wed, 9 Jan 2002 21:50:59 +0000 (21:50 +0000)]
fixed changelog

22 years agoIf the mbox file is a symlink, follow the symlink and get the One True
Jeffrey Stedfast [Wed, 9 Jan 2002 21:34:07 +0000 (21:34 +0000)]
If the mbox file is a symlink, follow the symlink and get the One True

2002-01-09  Jeffrey Stedfast  <fejj@ximian.com>

* providers/local/camel-mbox-folder.c (camel_mbox_folder_new): If
the mbox file is a symlink, follow the symlink and get the One
True Path so that we can rewrite the mbox later without worrying
about clobbering the symlink.

2002-01-08  Jeffrey Stedfast  <fejj@ximian.com>

* camel-filter-search.c (TODO): There are a few sexp callbacks
that could be modified to use fms->info rather than using a
message object (like date and possibly mlist stuff) but *only* if
the date exists on the CamelMessageInfo object (since it may be
blank except for message flags).
(camel_filter_search_get_message): New internal convenience
function to make sure that the FilterMessageSearch has loaded the
message (and to load the message if this isn't the case).
(check_header): Call camel_filter_search_get_message().
(header_exists): Same.
(header_regex): Here too.
(header_full_regex): And here.
(body_contains): Again here.
(body_regex): Here too.
(get_sent_date): Here also.
(get_received_date): Same.
(get_source): Here if we need to.
(camel_filter_search_match): Now takes a callback function/data
pair for on-demand message loading so that we don't necessarily
have to load the message if the defined filter rules don't require
it.

* camel-filter-driver.c (camel_filter_driver_filter_folder): Don't
bother fetching the message here, let
camel_filter_driver_filter_message() worry about this.
(get_message_cb): New utility callback to fetch a message.
(camel_filter_driver_filter_message): Only fetch the message if we
absolutely need it to get a CamelMessageInfo. Instead of passing a
message object to camel_filter_search_match(), pass get_message_cb
and some user_data so that the matching code can fetch the message
on demand.

22 years agoFlush the only-once actions.
Jeffrey Stedfast [Tue, 8 Jan 2002 00:45:58 +0000 (00:45 +0000)]
Flush the only-once actions.

2002-01-07  Jeffrey Stedfast  <fejj@ximian.com>

* camel-folder.c (filter_filter): Flush the only-once actions.

* camel-filter-driver.c (camel_filter_driver_filter_message):
Don't increment a filtered_count here any longer.
(camel_filter_driver_reset_filtered_count): Removed.
(camel_filter_driver_get_filtered_count): Removed.
(do_beep): New action.
(play_sound): New action to play a sound
(do_only_once): Another new action.
(camel_filter_driver_finalise): Free the only_once hash if the
driver has not been "flushed".
(camel_filter_driver_flush): Flush all of the only-once actions.

22 years agoMoved windows-1251 to the end of the list since it contains the euro and
Jeffrey Stedfast [Mon, 7 Jan 2002 20:29:37 +0000 (20:29 +0000)]
Moved windows-1251 to the end of the list since it contains the euro and

2002-01-07  Jeffrey Stedfast  <fejj@ximian.com>

* camel-charset-map.c: Moved windows-1251 to the end of the list
since it contains the euro and we'd prefer to use iso-8859-15 when
the euro is requested than a windows charset if possible.

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

22 years agoDon't try setting a content-type parameter if either the name or value is
Jeffrey Stedfast [Fri, 4 Jan 2002 22:20:29 +0000 (22:20 +0000)]
Don't try setting a content-type parameter if either the name or value is

2001-12-12  Jeffrey Stedfast  <fejj@ximian.com>

* camel-folder-summary.c (content_info_load): Don't try setting a
content-type parameter if either the name or value is NULL.

* camel-mime-utils.c (header_set_param): NULL-protection.

22 years agoapplied a update patch
Jeffrey Stedfast [Wed, 2 Jan 2002 23:04:06 +0000 (23:04 +0000)]
applied a update patch

22 years agoso my guess is that mutt probably doesn't compile since we don't compile using the...
Jeffrey Stedfast [Wed, 2 Jan 2002 21:32:31 +0000 (21:32 +0000)]
so my guess is that mutt probably doesn't compile since we don't compile using the functions that mutt uses.

this is why I love libnss.

22 years agoDo more like what mutt does so hopefully this'll fix bug #16363 and
Jeffrey Stedfast [Wed, 2 Jan 2002 19:16:45 +0000 (19:16 +0000)]
Do more like what mutt does so hopefully this'll fix bug #16363 and

2002-01-02  Jeffrey Stedfast  <fejj@ximian.com>

* camel-tcp-stream-ssl.c (ssl_bad_cert): Do more like what mutt
does so hopefully this'll fix bug #16363 and #16300.

22 years agoCompletely rewritten. It is now a load faster and a heck of a lot more
Jeffrey Stedfast [Fri, 21 Dec 2001 19:51:58 +0000 (19:51 +0000)]
Completely rewritten. It is now a load faster and a heck of a lot more

2001-12-21  Jeffrey Stedfast  <fejj@ximian.com>

* broken-date-parser.c (parse_broken_date): Completely
rewritten. It is now a load faster and a heck of a lot more
accurate, also now returns a time_t and sets the saveoffset
variable rather than returning a new char* buffer for the normal
camel date parser to re-parse. This saves a fair number of cpu
cycles :-)

* camel-mime-utils.c (header_decode_date): Cleanup the broken date
parsing code.

22 years agoChange the prototype for camel_address_get_type to return a CamelType
Jeffrey Stedfast [Thu, 20 Dec 2001 18:45:22 +0000 (18:45 +0000)]
Change the prototype for camel_address_get_type to return a CamelType

2001-12-20  Jeffrey Stedfast  <fejj@ximian.com>

* camel-address.h: Change the prototype for camel_address_get_type
to return a CamelType (since internally this is what it returns
and also in case we decide to write a replacement for the current
CamelObject it'd be easier to drop in).

* camel-internet-address.h: Same but for
camel_internet_address_get_type()

* providers/smtp/camel-smtp-transport.c (smtp_send_to): Updated to
use a CamelAddress of recipients.
(smtp_send): Since smtp_send_to now takes a CamelAddress
recipients argument, our lives have been simplified and we can now
just concat To/Cc/Bcc into a recipients addr and send away.

* providers/sendmail/camel-sendmail-transport.c
(sendmail_send_to): Updated to use a CamelAddress of recipients.

* camel-transport.c (camel_transport_send_to): Now takes a
CamelAddress argument for the recipient list rather than a GList.

22 years agoinstall in the right directory. (accidentally didn't commit these before)
Dan Winship [Wed, 19 Dec 2001 21:10:27 +0000 (21:10 +0000)]
install in the right directory. (accidentally didn't commit these before)

22 years agorevert my "simplification" of the last commit, it was broken - I must have been brain...
Jeffrey Stedfast [Tue, 18 Dec 2001 17:59:57 +0000 (17:59 +0000)]
revert my "simplification" of the last commit, it was broken - I must have been brain-dead when I wrote it.

22 years agoNew function to map ISO charsets to the Windows charsets.
Jeffrey Stedfast [Tue, 18 Dec 2001 01:28:27 +0000 (01:28 +0000)]
New function to map ISO charsets to the Windows charsets.

2001-12-17  Jeffrey Stedfast  <fejj@ximian.com>

* camel-charset-map.c (camel_charset_iso_to_windows): New function
to map ISO charsets to the Windows charsets.

* camel-mime-part-utils.c (broken_windows_charset): Detect Windows
charsets.
(simple_data_wrapper_construct_from_parser): Simplify a tad and
also check for iso-8859-* charsets that are really Windows
charsets. Fixes bug #12631.

22 years agoonly use major and minor version in the camel providerdir, not micro and nano
Dan Winship [Mon, 17 Dec 2001 17:59:47 +0000 (17:59 +0000)]
only use major and minor version in the camel providerdir, not micro and nano

22 years agoReverted my previous changes here since it doesn't actually work afterall.
Jeffrey Stedfast [Mon, 17 Dec 2001 02:51:00 +0000 (02:51 +0000)]
Reverted my previous changes here since it doesn't actually work afterall.

2001-12-16  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (get_content): Reverted my
previous changes here since it doesn't actually work afterall.

* providers/imap/camel-imap-wrapper.c (imap_wrapper_hydrate):
Update to do uudecoding when appropriate.

22 years agoTry to use the original boundary so luis will stop bugging me about "data
Jeffrey Stedfast [Mon, 17 Dec 2001 01:52:40 +0000 (01:52 +0000)]
Try to use the original boundary so luis will stop bugging me about "data

2001-12-16  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (get_content): Try to use the
original boundary so luis will stop bugging me about "data
corruption". Also preserve other params in the multipart
content-type by dumping it to a string and setting it on the mime
part.

22 years agoTry to use the original boundary so luis will stop bugging me about "data
Jeffrey Stedfast [Mon, 17 Dec 2001 00:57:10 +0000 (00:57 +0000)]
Try to use the original boundary so luis will stop bugging me about "data

2001-12-16  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (get_content): Try to use the
original boundary so luis will stop bugging me about "data
corruption".

22 years agofix openssl linkage problem
Jeffrey Stedfast [Sat, 15 Dec 2001 01:07:21 +0000 (01:07 +0000)]
fix openssl linkage problem

22 years agoReset the filtered_count to zero.
Jeffrey Stedfast [Fri, 14 Dec 2001 23:23:06 +0000 (23:23 +0000)]
Reset the filtered_count to zero.

2001-12-14  Jeffrey Stedfast  <fejj@ximian.com>

* camel-filter-driver.c
(camel_filter_driver_reset_filtered_count): Reset the
filtered_count to zero.
(camel_filter_driver_get_filtered_count): Return the private
filtered_count value.
(camel_filter_driver_filter_message): Increment the
filtered_count.
(camel_filter_driver_set_shell_exec_func): New function to set the
shell-exec func.
(shell_exec): New ESExp filter action callback.

22 years agoRemoved x-inline-pgp-hack kludge because it doesn't work.
Jeffrey Stedfast [Fri, 14 Dec 2001 18:06:16 +0000 (18:06 +0000)]
Removed x-inline-pgp-hack kludge because it doesn't work.

2001-12-14  Jeffrey Stedfast  <fejj@ximian.com>

* camel-pgp-mime.c (camel_pgp_mime_part_verify): Removed
x-inline-pgp-hack kludge because it doesn't work.
(camel_pgp_mime_part_decrypt): Same.

22 years agoinclude stdlib.h (for alloca on freebsd) and only include alloca.h if
Chris Toshok [Fri, 14 Dec 2001 03:02:55 +0000 (03:02 +0000)]
include stdlib.h (for alloca on freebsd) and only include alloca.h if

2001-12-13  Chris Toshok  <toshok@ximian.com>

* camel-data-cache.c: include stdlib.h (for alloca on freebsd) and
only include alloca.h if HAVE_ALLOCA_H is defined.

22 years agoFixes #17085
Zbigniew Chyla [Thu, 13 Dec 2001 23:37:34 +0000 (23:37 +0000)]
Fixes #17085

2001-12-11  Zbigniew Chyla  <cyba@gnome.pl>

Fixes #17085

* camel-charset-map.c: Added #include <errno.h>.

* camel-charset-map-private.h:
Recreated (following instructions from camel-charset-map.c)

22 years agocast the key argument to g_hash_table_insert to a gpointer to avoid compiler warnings
Jeffrey Stedfast [Thu, 13 Dec 2001 20:58:30 +0000 (20:58 +0000)]
cast the key argument to g_hash_table_insert to a gpointer to avoid compiler warnings

22 years agoKeep a name-to-type hash so that we can make sure that the type has not
Jeffrey Stedfast [Thu, 13 Dec 2001 20:38:11 +0000 (20:38 +0000)]
Keep a name-to-type hash so that we can make sure that the type has not

2001-12-11  Jeffrey Stedfast  <fejj@ximian.com>

* camel-object.c (camel_type_register): Keep a name-to-type hash
so that we can make sure that the type has not yet been registered
(prevents a race condition such as the one in bug #16559).

* camel-service.c (camel_service_connect): Make sure that the
connect_op is non-NULL before unregistering/unreffing it.

22 years agoadded a Content-Description to the signature part - part of a merge from the 1-0...
Jeffrey Stedfast [Thu, 13 Dec 2001 20:37:20 +0000 (20:37 +0000)]
added a Content-Description to the signature part - part of a merge from the 1-0 branch.

22 years agomerged some changes from the 1-0 branch that apparently never got merged into HEAD
Jeffrey Stedfast [Thu, 13 Dec 2001 20:32:42 +0000 (20:32 +0000)]
merged some changes from the 1-0 branch that apparently never got merged into HEAD

22 years agoProtect against either of the types being NULL.
Jeffrey Stedfast [Mon, 10 Dec 2001 19:14:32 +0000 (19:14 +0000)]
Protect against either of the types being NULL.

2001-12-04  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-utils.c (header_content_type_simple): Protect against
either of the types being NULL.

2001-12-05  Jeffrey Stedfast  <fejj@ximian.com>

* camel-mime-filter-basic.c (filter): If complete() allocates
len+2 bytes for the out buffer, so should this. See bug #16371 for
an example case.

2001-12-05  Jeffrey Stedfast  <fejj@ximian.com>

* camel-sasl-digest-md5.c: iconv() returns a size_t, not an int.

* camel-pgp-context.c: The return value of iconv() is a size_t,
not an int.

* camel-mime-part-utils.c (convert_buffer): Always use size_t args
for iconv().

* camel-mime-filter-charset.c (complete): Always use size_t args
for iconv().
(filter): Same.

* camel-mime-utils.c (header_address_fold): Make headerlen a
size_t instead of an int.
(header_fold): Same.
(base64_encode_close): We should be returning a size_t and inlen
should also be a size_t.
(base64_encode_step): Same here.
(base64_decode_step): Here too.
(base64_encode_simple): And here...
(base64_decode_simple): Same.
(uuencode_close): We should also use size_t's here...
(uuencode_step): And here too.
(uudecode_step): And also here.
(quoted_encode_close): Same idea here.
(quoted_encode_step): Again here.
(quoted_decode_step): Here too.
(quoted_encode): Input length should be a size_t.
(rfc2047_decode_word): Same.
(g_string_append_len): Here too.
(append_8bit): "
(rfc2047_encode_word): "
(quote_word): "
(hex_decode): "
(rfc2184_decode): Use size_t's with iconv().
(header_decode_param): Same.

22 years agoFix the tm_gmtoff case (its sign is the opposite of "timezone"). Fixes
Dan Winship [Mon, 10 Dec 2001 14:28:55 +0000 (14:28 +0000)]
Fix the tm_gmtoff case (its sign is the opposite of "timezone"). Fixes

* camel-mime-message.c (camel_mime_message_set_date): Fix the
tm_gmtoff case (its sign is the opposite of "timezone"). Fixes
#14678

22 years agoImplements marking messages as "Need Reply".
Jon Trowbridge [Mon, 10 Dec 2001 03:50:36 +0000 (03:50 +0000)]
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.

22 years agoDon't use regex matching. Fixes bug #16227.
Jeffrey Stedfast [Fri, 30 Nov 2001 23:43:39 +0000 (23:43 +0000)]
Don't use regex matching. Fixes bug #16227.

2001-11-29  Jeffrey Stedfast  <fejj@ximian.com>

* camel-folder-search.c (search_body_contains): Don't use regex
matching. Fixes bug #16227.

* camel-mime-message.c (best_encoding): Check the content-object's
mime type, not the mime part types. Should fix bug #15843.

2001-11-27  Jeffrey Stedfast  <fejj@ximian.com>

* providers/imap/camel-imap-folder.c (get_content): Return NULL if
construct_from_stream fails.
(get_message): Same.
(get_message_simple): Here too.
(add_message_from_data): And here.

22 years agoUse the uid rather than vuid for unmatched. Also add the uid to unmatched
4 [Fri, 30 Nov 2001 21:38:05 +0000 (21:38 +0000)]
Use the uid rather than vuid for unmatched. Also add the uid to unmatched

2001-11-14    <NotZed@Ximian.com>

        * camel-vee-folder.c (folder_changed_remove_uid): Use the uid
        rather than vuid for unmatched.  Also add the uid to unmatched if
        it wasn't in the unmatched_uids table at all.
        (folder_changed_change): If checking for added, if the new ones
        dont match, then try to add them to unmatched.  Fixes #6893.

        * camel-folder-summary.c (camel_folder_summary_index): Change lock
        order, always summary_lock before ref_lock.
        (camel_folder_summary_array): "
        (camel_folder_summary_uid): "
        (camel_folder_summary_remove_uid): "  Fixes a deadlock.

22 years agoCompletely new implementation of NNTP.
Not Zed [Fri, 30 Nov 2001 03:09:38 +0000 (03:09 +0000)]
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.

22 years agoIf the uid doesn't have a ',' in it, fail to crash.
Not Zed [Tue, 27 Nov 2001 23:05:30 +0000 (23:05 +0000)]
If the uid doesn't have a ',' in it, fail to crash.

2001-11-25  Not Zed  <NotZed@Ximian.com>

        * providers/nntp/camel-nntp-folder.c (nntp_folder_get_message): If
        the uid doesn't have a ',' in it, fail to crash.

        * providers/nntp/camel-nntp-newsrc.c
        (camel_nntp_newsrc_article_is_read): check group != NULL before scanning.
        (camel_nntp_newsrc_get_highest_article_read): "
        (camel_nntp_newsrc_get_num_articles_read): "
        (camel_nntp_newsrc_mark_range_read): "

        * providers/nntp/camel-nntp-store.c
        (camel_nntp_store_get_overview_fmt): IF we dont have
        nntp_list_follows, dont try and get a list response.
        (nntp_store_get_folder_info): Set path part of folderinfo.