2007-06-04 Jeffrey Stedfast * camel-imap4-summary.c (imap4_fetch_all_update): Don't iterate over just fetch->total messages. We need to iterate over the entire summary in order to remove *all* messages which no longer exist. 2007-05-31 Jeffrey Stedfast * camel-imap4-utils.c (camel_imap4_parse_flags_list): Handle Junk/NonJunk flags. 2007-04-09 Jeffrey Stedfast * camel-imap4-summary.c (imap4_summary_fetch_all): Need to use ther IMAP4_ALL macro here because ALL cannot be merged with other items in a FETCH query. 2007-04-08 Jeffrey Stedfast * camel-imap4-summary.c: Synced up with my libspruce implementation a bit. * camel-imap4-stream.c (camel_imap4_stream_line): Set *inend to '\0' before comparing *inptr to '\n' when deciding whether or not to refill the buffer so that if inptr == inend, it works properly. * camel-imap4-store.c (connect_to_server): Need to actually toggle into TLS after a successful STARTTLS command. Doh. 2007-04-05 Ross Burton * camel-imap4-folder.c: Use g_mkdir_with_parents (#383686). 2007-02-23 Matthew Barnes ** Fixes bug #356177 * camel-imap4-folder.c: * camel-imap4-store.c: Migrate from EMutex to GStaticMutex or GStaticRecMutex. 2006-07-12 Andre Klapper * camel-imap4-provider.c: adding trailing colon to string. Fixes bug #331858. 2006-06-15 Andre Klapper * camel-imap4-folder.c: * camel-imap4-store.c: changing "cancelled" to "canceled" in user-visible strings. Fixes bug #342163. 2006-06-09 Chris Heath * camel-imap4-journal.c (camel_imap4_journal_append): Fix memory leak. Fixes bug #335423. 2006-04-21 Jeffrey Stedfast * camel-imap4-store.c (connect_to_server): Set some socket options like keepalive and nodelay. (connect_to_server_wrapper): Don't do fallback with SSL/TLS. Fixes bug #321797. 2006-04-12 Jeffrey Stedfast * camel-imap4-folder.c (imap4_append_message): strcpy the folder->full_name into the freshly alloca'd parent_name buffer before using strrchr on it. 2006-03-31 Jeffrey Stedfast Fix for bug #272058 * camel-imap4-summary.c (untagged_fetch_all): Get the In-Reply-To header too. (decode_envelope): Only decode the ENVELOPE's In-Reply-To field if we don't already have a list of references decoded (e.g. from a header query). Decode the Message-Id value before getting the md5 digest so that the format matches the References/In-Reply-To values. (decode_references): Modified to take 2 string args - References and In-Reply-To - so that we can merge the 2 references lists like the default CamelFolderSummary implementation. 2006-03-28 Jeffrey Stedfast * camel-imap4-store.c (imap4_reconnect): Only try to authenticate if the engine is not already in the authenticated state. 2005-12-08 Tor Lillqvist * camel-imap4-store.c: Bypass the external command stuff on Win32. * camel-imap4-summary.c: Use g_ascii_strncasecmp() instead of strncasecmp(). 2005-09-28 Jeffrey Stedfast * camel-imap4-store.c (imap4_create_folder): Finally fixed to handle recreating parent folders to allow subfolders. (imap4_try_authenticate): Only request a password if no authentication mechanism is to be used or if the mechanism requires a password. Fixes bug #317301. 2005-08-22 Not Zed * camel-imap4-utils.c (camel_imap4_utils_set_unexpected_token_error): * camel-imap4-stream.c (camel_imap4_stream_next_token): * camel-imap4-command.c (imap4_command_append_string): fix type to printfs. (camel_imap4_command_newv, unexpected_token): 2005-08-12 Tor Lillqvist * Makefile.am: Use NO_UNDEFINED. Link with libcamel-provider, libcamel and CAMEL_LIBS. 2005-04-17 Changwoo Ryu ** See bug #300891 * Makefile.am (INCLUDES): define CAMEL_EXPLICIT_TRANSLATION_DOMAIN. * camel-imap4-provider.c (camel_provider_module_init): set translation_domain in CamelProvider struct. 2005-08-02 Shreyas Srinivasan * camel-imap-store.c (connect_to_server_wrapper): only use command if use_command is set. 2005-05-23 Jeffrey Stedfast * camel-imap4-folder.c (imap4_append_message): The UIDPLUS extension doesn't give a "UID APPEND" command, instead it just provides the APPENDUID RESP-CODE, so no need to conditionalise the command-creation code here. Simply always send "APPEND ..." (imap4_transfer_messages_to): Sync the flags before performing a COPY. Fixes bug #274407. 2005-03-11 Jeffrey Stedfast * camel-imap4-folder.c (imap4_sync): Don't try to EXPUNGE in READ-ONLY mode. (imap4_sync_changes): Don't check permanent_flags here. (imap4_sync): Check permanent_flags here instead and don't bother wasting cycles if permanent_flags is empty. (imap4_sync): Don't attempt to EXPUNGE if the folder is READ-ONLY. (imap4_append_message): Set an exception if the folder is read-only and don't bother trying to append. * camel-imap4-engine.c (camel_imap4_engine_select_folder): Set the READ-ONLY bit on the folder if the server says we've opened it in READ-ONLY mode. 2005-02-03 Jeffrey Stedfast * camel-imap4-engine.c (camel_imap4_engine_handle_untagged_1): Handle XGWMOVE untagged events as EXPUNGE events. * camel-imap4-folder.c (imap4_transfer_messages_to): Optionally use XGWMOVE if the extension is available. * camel-imap4-engine.c (camel_imap4_engine_capability): Query for the XGWEXTENSIONS as well if the server supports it. 2005-02-14 Jeffrey Stedfast * camel-imap4-store-summary.c (store_info_to_folder_info): Translate name of Inbox and also set flags as torkel's previous fix. * camel-imap4-store.c (imap4_build_folder_info): Translate the name of Inbox. 2005-02-13 Björn Torkelsson * camel-imap4-store.c (imap4_build_folder_info): Add flags if it is inbox. 2005-02-10 Jeffrey Stedfast * camel-imap4-search.c (imap4_body_contains): If we're in offline mode, let the parent implementation perform the search. 2005-02-04 Not Zed * camel-imap4-store.c (imap4_build_folder_info): always get the subscription info. (camel_imap4_store_class_init): added a fixme about folder_subscribed not being implemented. 2005-02-02 Jeffrey Stedfast * camel-imap4-store.c (imap4_build_folder_info): Set the CAMEL_FOLDER_SUBSCRIBED bit on the fi->flags if the info was gotten via an LSUB response. (imap4_build_folder_info): If our caller has requested subscription info, make sure to get it. (imap4_subscription_info): Get whether or not a folder is subscribed. 2005-02-01 Jeffrey Stedfast * camel-imap4-summary.c (imap4_header_load): Changed to have the 'have_mlist' bit be a summary flag rather than a new value stored in the summary header. (imap4_header_save): No longer need to save the have_mlist value ourselves. (camel_imap4_summary_flush_updates): Updated to use summary flags for have_mlist instead. 2005-02-01 Jeffrey Stedfast * camel-imap4-provider.c: Added command option. Reset back to imap4:// uris. * camel-imap4-store.c (connect_to_server_process): Implemented. (connect_to_server_wrapper): Call above when appropriate. * camel-imap4-engine.c (camel_imap4_engine_parse_resp_code): handle CAMEL_IMAP4_RESP_CODE_ALERT explicitly in the switch statement and have it break out. This prevents the code from getting to the "unknown resp-code" code path that prints a warning unnecessarily. 2005-01-31 Jeffrey Stedfast * camel-imap4-engine.c (camel_imap4_engine_iterate): On connect failures, disconnect our streams and set our engine state to DISCONNECTED. 2005-01-28 Jeffrey Stedfast * camel-imap4-summary.c (untagged_fetch_all): Get rid of the warnings about the mlist string not being strdup'd by the string pool. * camel-imap4-store.c (imap4_get_folder_info): In the ic1 error case, xfer the ic1 exception, not the ic0 exception (which might not even exist). Fixes bug #71919. Refer to main changelog for earlier changes.