platform/upstream/evolution-data-server.git
22 years agoIf the vee-folder is the unmatched, we don't have our own expression so we
Jeffrey Stedfast [Wed, 17 Apr 2002 22:33:33 +0000 (22:33 +0000)]
If the vee-folder is the unmatched, we don't have our own expression so we

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

* camel-vee-folder.c (vee_search_by_expression): If the vee-folder
is the unmatched, we don't have our own expression so we cannot
merge them. Instead, just use the expression passed in. This fixes
a Null-Pointer-Read crash on Solaris systems at least.

22 years agoGet rid of an unused variable.
Jeffrey Stedfast [Wed, 17 Apr 2002 01:25:28 +0000 (01:25 +0000)]
Get rid of an unused variable.

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

* camel-filter-driver.c (camel_filter_driver_filter_folder): Get
rid of an unused variable.

* providers/smtp/camel-smtp-transport.c (smtp_helo): Use
camel_gethostbyaddr since gethostbyaddr is not reentrant.

* camel-http-stream.c (http_connect): Updated after the rename of
camel_get_host_byname.

* camel-service.c (camel_gethostbyname): Renamed.
(camel_gethostbyaddr): New cancellable/reentrant version of
gethostbyaddr.

22 years agoAdded #include <sys/types.h> for dirent.h which needs it on MacOS X.
Jeffrey Stedfast [Sun, 14 Apr 2002 20:13:01 +0000 (20:13 +0000)]
Added #include <sys/types.h> for dirent.h which needs it on MacOS X.

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

* providers/local/camel-spoold-store.c: Added #include
<sys/types.h> for dirent.h which needs it on MacOS X.

* providers/local/camel-maildir-store.c: Same.

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

* providers/imap/camel-imap-message-cache.c: Same.

* camel-provider.c: Same.

* camel-data-cache.c: Same.

22 years agoAdded #include <sys/types.h> for dirent.h which needs it on MacOS X.
Jeffrey Stedfast [Sun, 14 Apr 2002 05:40:33 +0000 (05:40 +0000)]
Added #include <sys/types.h> for dirent.h which needs it on MacOS X.

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

* camel-provider.c: Added #include <sys/types.h> for dirent.h
which needs it on MacOS X.

* camel-data-cache.c: Same.

22 years agofix the nntp provider makefile.am
Jeffrey Stedfast [Sun, 14 Apr 2002 00:57:35 +0000 (00:57 +0000)]
fix the nntp provider makefile.am

22 years agoTreat commas as token delimeters. (WEEKDAY_CHARS): Use full weekday names
Jeffrey Stedfast [Fri, 12 Apr 2002 22:16:42 +0000 (22:16 +0000)]
Treat commas as token delimeters. (WEEKDAY_CHARS): Use full weekday names

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

* broken-date-parser.c (datetok): Treat commas as token
delimeters.
(WEEKDAY_CHARS): Use full weekday names in case the broken mailer
used the full names.
(MONTH_CHARS): Same as above but for months.

22 years agoIf the last message(s) were deleted, and we had any messages output,
Not Zed [Thu, 11 Apr 2002 09:00:57 +0000 (09:00 +0000)]
If the last message(s) were deleted, and we had any messages output,

2002-04-11  Not Zed  <NotZed@Ximian.com>

        * providers/local/camel-spool-summary.c (spool_summary_sync_full):
        If the last message(s) were deleted, and we had any messages
        output, account for the lost \n of the following From line by
        adding an extra \n. fix for #8214.

2002-04-10  Not Zed  <NotZed@Ximian.com>

        * camel-mime-part-utils.c (convert_buffer): If we get a 0 length
        input, return a 0 lenght output as valid - fixes bugs with some
        iconv impl and its simpler anyway.

22 years agoSet the UID_SET_LIMIT value to 4096. I ran into an issue tonight where
Jeffrey Stedfast [Thu, 11 Apr 2002 05:19:13 +0000 (05:19 +0000)]
Set the UID_SET_LIMIT value to 4096. I ran into an issue tonight where

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

* providers/imap/camel-imap-folder.c: Set the UID_SET_LIMIT value
to 4096. I ran into an issue tonight where apparently the IMAP
server changed the UIDVALIDITY and so Evo needed to re-fetch all
headers and it was trying to send a uid set of some 25k (yes, I
have a very large INBOX). Anyways, it was set to unlimited
before. Courier IMAPd can safely handle up to ~16k per token, but
UW IMAPd can only handle 8k per command-line, so I set it to 4k
just to be safe.

22 years agooops, after converting everything truncate the GByteArray to the correct length ...
Jeffrey Stedfast [Wed, 10 Apr 2002 20:03:51 +0000 (20:03 +0000)]
oops, after converting everything truncate the GByteArray to the correct length (in case we over-allocated)

22 years agoFixed a bug that would miscalculate how much data to copy into the
Jeffrey Stedfast [Wed, 10 Apr 2002 19:59:13 +0000 (19:59 +0000)]
Fixed a bug that would miscalculate how much data to copy into the

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

* camel-mime-part-utils.c (convert_buffer): Fixed a bug that would
miscalculate how much data to copy into the GByteArray (negative
value) thus causing a segfault. Also optimized it while I was at
it.

22 years agoMake the folder_lock recursive. See bug #22363 for details. Basically,
Jeffrey Stedfast [Wed, 10 Apr 2002 03:02:33 +0000 (03:02 +0000)]
Make the folder_lock recursive. See bug #22363 for details. Basically,

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

* camel-store.c (camel_store_init): Make the folder_lock
recursive. See bug #22363 for details. Basically,
get_folder_info() is requesting a diary folder which in turn
connects which requests then calls get_folder() but deadlocks
because get_folder_info already holds the lock.

22 years agomade the copmment clearer
Jeffrey Stedfast [Tue, 9 Apr 2002 20:02:43 +0000 (20:02 +0000)]
made the copmment clearer

22 years agoDon't adjust the timezone offset if we used tm.tm_gmtoff because it is
Jeffrey Stedfast [Tue, 9 Apr 2002 19:57:09 +0000 (19:57 +0000)]
Don't adjust the timezone offset if we used tm.tm_gmtoff because it is

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

* camel-mime-message.c (camel_mime_message_set_date): Don't adjust
the timezone offset if we used tm.tm_gmtoff because it is already
adjusted.

22 years agoIf we get multiple Content-Type header values, change subsequent headers
Not Zed [Tue, 9 Apr 2002 13:45:44 +0000 (13:45 +0000)]
If we get multiple Content-Type header values, change subsequent headers

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

        * camel-mime-part.c (construct_from_parser): If we get multiple
        Content-Type header values, change subsequent headers to
        X-Invalid-Content-Type so it doesn't wreck processing.  This fixes
        the reported case in #18929, but i dont know if it fixes the
        original posters problems.

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

        * camel-vtrash-folder.c (vtrash_move_messages_to): If we find
        we're moving from the vtrash to another folder, we need to convert
        the uid from a vfolder uid to the source uid (+8).  Fix for
        #20886.  Also changed to batch multiple moves to different folders
        so they are done as efficiently as possible rather than one at a
        time.

        * camel-mime-utils.c (base64_decode_step): If we only get passed
        '=', we back track only if we actually output any data.  Fix for
        #21716.
        (quoted_decode): Pass out size_t instead of int, and use 0 instead
        of -1 for error since its not signed.  This will fix similar bug
        to above in different circumstances since the result is taken as
        unsigned.  This is only an internal func.
        (quoted_encode): Return size_t just for consistency.

        * camel-block-file.c (block_file_validate_root): Comment out the
        debug and move it into a warning when the validation fails.

22 years agoDon't count our filler when encoding our line-length octet.
Jeffrey Stedfast [Mon, 8 Apr 2002 17:34:12 +0000 (17:34 +0000)]
Don't count our filler when encoding our line-length octet.

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

* camel-mime-utils.c (uuencode_close): Don't count our filler when
encoding our line-length octet.

22 years agoDon't get the statuscode here anymore. (http_method_invoke): Use a
Jeffrey Stedfast [Sat, 6 Apr 2002 01:15:53 +0000 (01:15 +0000)]
Don't get the statuscode here anymore. (http_method_invoke): Use a

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

* camel-http-stream.c (http_get_headers): Don't get the statuscode
here anymore.
(http_method_invoke): Use a User-Agent header and do basic proxy
authentication.
(stream_read): Handle redirects.
(camel_http_stream_set_user_agent): New function to allow client
to set the User-Agent string.
(camel_http_stream_set_proxy): New function for setting the proxy
server.
(camel_http_stream_set_proxy_authrealm): New function for setting
the proxy auth realm.
(camel_http_stream_set_proxy_authpass): New function for setting
the proxy auth password.

22 years agoIf (body-contains) is not passed any arguments, return empty/false. Fixes
Not Zed [Fri, 5 Apr 2002 08:06:47 +0000 (08:06 +0000)]
If (body-contains) is not passed any arguments, return empty/false. Fixes

2002-04-04  Not Zed  <NotZed@Ximian.com>

        * providers/imap/camel-imap-search.c (imap_body_contains): If
        (body-contains) is not passed any arguments, return empty/false.
        Fixes a crash exposed by #15001.

22 years agoSimplified since we can now decode in-reply-to without getting extra
Jeffrey Stedfast [Fri, 5 Apr 2002 00:08:23 +0000 (00:08 +0000)]
Simplified since we can now decode in-reply-to without getting extra

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

* camel-folder-summary.c (message_info_new): Simplified since we
can now decode in-reply-to without getting extra cruft. Get rid of
the FIXME about having to check scan->id because of the
possibility of it being NULL, this can no longer happen.

* camel-mime-utils.c (header_references_inreplyto_decode): New
function to decode in-reply-to headers. Only grabs the first thing
that looks like a message-id and then returns.
(header_references_decode): Loop calling
header_references_decode_single (a new internal function).

22 years agoReset the keepalive timeout to 10 minutes rather than the 30 seconds I was
Not Zed [Thu, 4 Apr 2002 02:43:47 +0000 (02:43 +0000)]
Reset the keepalive timeout to 10 minutes rather than the 30 seconds I was

2002-04-04  Not Zed  <NotZed@Ximian.com>

        * camel-remote-store.c (remote_connect): Reset the keepalive
        timeout to 10 minutes rather than the 30 seconds I was using for
        testing.

22 years agomake service_cache be an array of CAMEL_NUM_PROVIDER_TYPES elements so you
Dan Winship [Wed, 3 Apr 2002 18:18:31 +0000 (18:18 +0000)]
make service_cache be an array of CAMEL_NUM_PROVIDER_TYPES elements so you

* camel-provider.h (CamelProvider): make service_cache be an array
of CAMEL_NUM_PROVIDER_TYPES elements so you can have a single
provider offer both stores and transports. (Eg, Exchange, NNTP)

* providers/imap/camel-imap-provider.c: Don't initialize
service_cache here. (The session code can do it itself since the
url_hash and url_equal functions are stored as part of the
provider.)

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

* providers/local/camel-local-provider.c: Likewise.

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

* providers/sendmail/camel-sendmail-provider.c: Likewise.

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

* camel-session.c (register_provider): Initialize the provider's
service cache(s) here.
(camel_session_class_init): Don't initialize.
vee_provider.service_cache here.
(camel_session_destroy_provider): Update to destroy multiple
service_caches.
(service_cache_remove, get_service): Tweak these a bit to deal
with multiple service_caches.

22 years agoTurn indexing back on, fingers crossed ...
Not Zed [Wed, 3 Apr 2002 13:28:30 +0000 (13:28 +0000)]
Turn indexing back on, fingers crossed ...

2002-04-03  Not Zed  <NotZed@Ximian.com>

        * providers/local/camel-local-folder.c
        (camel_local_folder_construct): Turn indexing back on, fingers
        crossed ...

        * camel-block-file.c (sync_nolock): #!@$@$#@~#$
        DF@#$!Q@$#!@$#!#%.  Well it helps if we're iterating a list to
        iterate the node pointer ...

        * camel-text-index.c (text_index_sync): Sync the key tables
        explcitly.
        (text_index_sync): Debug out frag info.
        (camel_text_index_dump): Added a (rather large, but optional) raw
        dumping mode for debugging purposes.

        * camel-partition-table.c (camel_key_table_finalise): Sync root
        block when done.

22 years agoHandle a ton more nspr i/o errno's. (stream_connect): Act as if we are
Jeffrey Stedfast [Tue, 2 Apr 2002 23:04:11 +0000 (23:04 +0000)]
Handle a ton more nspr i/o errno's. (stream_connect): Act as if we are

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

* camel-tcp-stream-ssl.c (set_errno): Handle a ton more nspr i/o
errno's.
(stream_connect): Act as if we are doing a non-blocking
connect. This is to try and work around bug #15120 where users get
an EINPROGRESS error. Maybe importing a PRFileDesc into SSL mode
automagically makes it non-blocking? I dunno.

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

* camel-folder-summary.c (message_info_new): Updated the
construction of the references to match JWZ's updated algorithm
initialization (ie, append any In-Reply-To reference onto any
References header and never take more than a single message-id
from the In-Reply-To header since anything after the first will
probably just be email addresses). Fixes bug #1336.

22 years agoSync the key tables explcitly.
Not Zed [Tue, 2 Apr 2002 20:03:42 +0000 (20:03 +0000)]
Sync the key tables explcitly.

2002-04-03  Not Zed  <NotZed@Ximian.com>

        * camel-text-index.c (text_index_sync): Sync the key tables
        explcitly.

        * camel-partition-table.c (camel_key_table_finalise): Sync root
        block when done.
        (camel_key_table_sync): New function, sync key table (root) explicitly.

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

        * camel-block-file.c (camel_block_file_free_block): Mark root
        block dirty when we change it (this function isn't used yet
        anyway).

        * camel-text-index.c (text_index_add_name_to_word): Touch the root
        block when we modify the counts.  Also, abort processing on any
        errors.
        (text_index_sync): Fix typo in comments.  Sync the block file
        inside the lock.
        (text_index_compress_nosync): Lock the old index while we're
        compressing.
        (text_index_compress_nosync): Remove the bogus while() at the end
        of the while() loops!  Also plug a memleak - records weren't
        freed.
        (text_index_rename): Lock around rename op.
        (text_index_add_name): More typos.
        (text_index_sync): Touch root when changing it.
        (text_index_add_name): "
        (text_index_delete_name): "
        (camel_text_index_new): Touch root if we change it.
        (text_index_cursor_reset): Make sure we NULL pointers after we
        free them (nothing uses this yet).

        * camel-partition-table.c (hash_key): Remove some debug
        accidentally left in.
        (camel_partition_table_add): When linking in the next block list,
        set the right previous pointer.
        (camel_key_table_add): Simplify the 'left' calculation (it was
        already ok though).
        (camel_key_table_next): Initialise returns before processing.
        Broaden the lock slightly, and simplify validity calculations.

22 years agoPut back in the exception setup stuff i disabled for debugging.
Not Zed [Tue, 2 Apr 2002 00:43:37 +0000 (00:43 +0000)]
Put back in the exception setup stuff i disabled for debugging.

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

* providers/imap/camel-imap-store.c (imap_keepalive): Put back in
the exception setup stuff i disabled for debugging.

22 years agoTemporarily disable indexing.
Not Zed [Mon, 1 Apr 2002 23:58:53 +0000 (23:58 +0000)]
Temporarily disable indexing.

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

        * providers/local/camel-local-folder.c
        (camel_local_folder_construct): Temporarily disable indexing.

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

        * camel-partition-table.c (camel_key_table_lookup): Change range
        checking assert to a warning.

        * providers/pop3/camel-pop3-folder.c (pop3_finalize): Make sure we
        flush out all outstanding commands before finalising, stops being
        finalised while outsanding requests are processed by the store
        finalise.
        (pop3_get_message): Instead of pre-fetching all messages, just
        pre-fetch a maxiumum number at any one time, stops us running out
        of cache fd's.

        * providers/nntp/camel-nntp-folder.c (nntp_folder_init/finalise):
        Setup priv data + locks, & free.

        * providers/imap/camel-imap-folder.c (imap_rescan): Batch all
        message_chagned events into a single folder_changed event
        (otherwise updates can be >>> expensive, like >5 hours for 80K
        messages changing!).  Alternately it could use folder
        freeze/unfreeze perhaps.

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

        * providers/imap/camel-imap-store.c (imap_keepalive): Pass an
        exception to called code so it behaves properly since it uses the
        passed exception to check returns.

22 years ago#include appropriate headers for mkdir
Jeffrey Stedfast [Mon, 1 Apr 2002 20:33:02 +0000 (20:33 +0000)]
#include appropriate headers for mkdir

22 years agoUse -avoid-version instead of -version-info 0:0:0, and specify -module.
Dan Winship [Mon, 1 Apr 2002 16:17:04 +0000 (16:17 +0000)]
Use -avoid-version instead of -version-info 0:0:0, and specify -module.

* providers/imap/Makefile.am (libcamelimap_la_LDFLAGS): Use
-avoid-version instead of -version-info 0:0:0, and specify
-module. (From Max Horn <max@quendi.de>).

* providers/local/Makefile.am (libcamellocal_la_LDFLAGS): Likewise.

* providers/nntp/Makefile.am (libcamelnntp_la_LDFLAGS): Likewise.

* providers/sendmail/Makefile.am (libcamelsendmail_la_LDFLAGS):
Likewise.

* providers/smtp/Makefile.am (libcamelsmtp_la_LDFLAGS): Likewise.

* providers/pop3/Makefile.am (libcamelpop3_la_LDFLAGS): Likewise.
Also remove $(KRB4_LDFLAGS) since KPOP is gone.
(INCLUDES): and $(KRB4_CFLAGS)

22 years agoWe now have to check to make sure that p->message is non-NULL because we
Jeffrey Stedfast [Fri, 29 Mar 2002 00:04:28 +0000 (00:04 +0000)]
We now have to check to make sure that p->message is non-NULL because we

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

* camel-filter-driver.c (do_copy): We now have to check to make
sure that p->message is non-NULL because we only load the message
when we have to.
(do_move): Same here.

22 years agoChange the message arg to a CamelMimeMessage instead of a CamelMedium.
Dan Winship [Thu, 28 Mar 2002 23:20:09 +0000 (23:20 +0000)]
Change the message arg to a CamelMimeMessage instead of a CamelMedium.

* camel-transport.c (camel_transport_send_to): Change the message
arg to a CamelMimeMessage instead of a CamelMedium. Even the NNTP
provider returns CamelMimeMessages, and we're never going to
support anything more exotic than that. Also do a few more
g_return_if_fails here instead of in the providers.
(camel_transport_can_send): No longer needed.
(camel_transport_send): Remove this too. It wasn't being used any
more, and it doesn't behave exactly the same in sendmail and smtp.

* providers/smtp/camel-smtp-transport.c (smtp_send,
smtp_can_send): Gone.
(smtp_send_to): Update for arg change.
(smtp_data): Make this take a CamelMimeMessage too.

* providers/sendmail/camel-sendmail-transport.c (sendmail_send,
sendmail_can_send): Gone.
(sendmail_send_to): Update for arg change, and merge in the part
that used to be shared with sendmail_send.

22 years agoConstruct the source_url the right way. The previous way was generating
Jeffrey Stedfast [Wed, 27 Mar 2002 19:38:08 +0000 (19:38 +0000)]
Construct the source_url the right way. The previous way was generating

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

* camel-filter-driver.c (camel_filter_driver_filter_folder):
Construct the source_url the right way. The previous way was
generating urls like pop://fejj@ximian.com;keep_on_server/inbox
which is wrong.

22 years agoChanged to use just g_utf8_strdown instead of utf8_normalise, to match the
Not Zed [Mon, 25 Mar 2002 22:58:13 +0000 (22:58 +0000)]
Changed to use just g_utf8_strdown instead of utf8_normalise, to match the

2002-03-26  Not Zed  <NotZed@Ximian.com>

        * camel-text-index.c (text_index_normalise): Changed to use just
        g_utf8_strdown instead of utf8_normalise, to match the indexing
        code.  utf8_normalise is just far too expensive (saves approx 25%
        total processing).

22 years agoupdated
Jeffrey Stedfast [Mon, 25 Mar 2002 21:47:36 +0000 (21:47 +0000)]
updated

22 years agoWhen we add a new name, up all of the cache limits, because we're probably
Not Zed [Mon, 25 Mar 2002 12:11:44 +0000 (12:11 +0000)]
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.

22 years agoUse the date in the received header for the received_date.
Jeffrey Stedfast [Fri, 22 Mar 2002 00:19:58 +0000 (00:19 +0000)]
Use the date in the received header for the received_date.

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

* camel-folder-summary.c (camel_message_info_new_from_header): Use
the date in the received header for the received_date.

22 years agoFix this to work right. We need to convert the input buffer to the charset
Jeffrey Stedfast [Tue, 19 Mar 2002 23:29:41 +0000 (23:29 +0000)]
Fix this to work right. We need to convert the input buffer to the charset

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

* camel-mime-utils.c (header_encode_param): Fix this to work
right. We need to convert the input buffer to the charset we claim
in the encoded param (duh).

22 years agoUpdated to use the same logic as the POP code.
Jeffrey Stedfast [Mon, 18 Mar 2002 21:59:54 +0000 (21:59 +0000)]
Updated to use the same logic as the POP code.

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

* providers/smtp/camel-smtp-transport.c
(connect_to_server_wrapper): Updated to use the same logic as the
POP code.

22 years agoNo longer takes a stls_supported argument since we no longer need it with
Jeffrey Stedfast [Mon, 18 Mar 2002 21:31:25 +0000 (21:31 +0000)]
No longer takes a stls_supported argument since we no longer need it with

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

* providers/pop3/camel-pop3-store.c (connect_to_server): No longer
takes a stls_supported argument since we no longer need it with
the new logic.
(connect_to_server_wrapper): New logic: First try connecting to
the SSL port (995 by default), if that fails with
SERVICE_UNAVAILABLE, then we attempt to connect (to port 110 by
default) and try to use STARTTLS.

22 years agoDon't allow any empty structs. If !ENABLE_THREADS, provide a gpointer
Jeffrey Stedfast [Fri, 15 Mar 2002 19:06:30 +0000 (19:06 +0000)]
Don't allow any empty structs. If !ENABLE_THREADS, provide a gpointer

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

* camel-private.h: Don't allow any empty structs. If
!ENABLE_THREADS, provide a gpointer dummy member. Fixes bug #6382.

22 years agoAdded a work-around for SMTP servers that can't read the RFCs and thus
Jeffrey Stedfast [Wed, 13 Mar 2002 23:44:29 +0000 (23:44 +0000)]
Added a work-around for SMTP servers that can't read the RFCs and thus

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

* providers/smtp/camel-smtp-transport.c (smtp_auth): Added a
work-around for SMTP servers that can't read the RFCs and thus
implement SASL incorrectly. Oh well, that's life in the world of
mail clients I guess.

22 years agoreverted my USER/PASS quoting fix
Jeffrey Stedfast [Wed, 13 Mar 2002 21:55:53 +0000 (21:55 +0000)]
reverted my USER/PASS quoting fix

22 years agoQuote the USER and PASS arguments since some people have spaces in their
Jeffrey Stedfast [Wed, 13 Mar 2002 20:47:00 +0000 (20:47 +0000)]
Quote the USER and PASS arguments since some people have spaces in their

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

* providers/pop3/camel-pop3-store.c (pop3_try_authenticate): Quote
the USER and PASS arguments since some people have spaces in their
user-names and/or passwords.

22 years agoNow takes a url argument.
Jeffrey Stedfast [Tue, 12 Mar 2002 20:36:08 +0000 (20:36 +0000)]
Now takes a url argument.

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

* camel-digest-store.c (camel_digest_store_new): Now takes a url
argument.

* camel-digest-folder.c (digest_add_multipart): Fixed some memory
corruption and also modified to use CAMEL_IS_MIME_MESSAGE() rather
than comparing content-type strings.
(digest_get_message): Fixed a logic blooper.

* camel-folder-summary.c (camel_message_info_new_from_header): Set
the date fields of the CamelMessageInfo as well. This may even fix
some filter-related bugs where the user was trying to compare
dates.

22 years agodo the typedef's in camel-types.h and include camel-digest-store.h in camel.h
Jeffrey Stedfast [Tue, 12 Mar 2002 00:55:53 +0000 (00:55 +0000)]
do the typedef's in camel-types.h and include camel-digest-store.h in camel.h

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.