aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/imap4/camel-imap4-engine.c
Commit message (Collapse)AuthorAgeFilesLines
* Kill dead filesJP Rosevear2005-01-111-1698/+0
| | | | svn path=/trunk/; revision=28342
* Handle numeric tokens for the COPYUID set values as well.Jeffrey Stedfast2004-11-141-8/+16
| | | | | | | | | | 2004-11-13 Jeffrey Stedfast <fejj@ximian.com> * providers/imap4/camel-imap4-engine.c (camel_imap4_engine_parse_resp_code): Handle numeric tokens for the COPYUID set values as well. svn path=/trunk/; revision=27912
* Properly handle NILs for the namespace separator (somehow I missed this,Jeffrey Stedfast2004-11-131-3/+13
| | | | | | | | | | 2004-11-12 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-engine.c (engine_parse_namespace): Properly handle NILs for the namespace separator (somehow I missed this, silly me). svn path=/trunk/; revision=27906
* Added much in-line documentation. (engine_parse_capability): UseJeffrey Stedfast2004-11-051-7/+151
| | | | | | | | | | | 2004-11-04 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-engine.c: Added much in-line documentation. (engine_parse_capability): Use g_ascii_str[n]casecmp(). (camel_imap4_engine_nstring): New convenience function. svn path=/trunk/; revision=27843
* New files implementing a folder-info cache for offline mode (and fasterJeffrey Stedfast2004-10-271-23/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-10-26 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-store-summary.[c,h]: New files implementing a folder-info cache for offline mode (and faster startup I guess). * providers/imap4/camel-imap4-store.c (imap4_build_folder_info): Cache the folder-info for later use in offline mode. * providers/imap4/camel-imap4-utils.c (camel_imap4_get_path_delim): Instead of assigning top = "INBOX", do strcpy (top, "INBOX") so that we can later modify the string. Fixes bug #68814. 2004-10-25 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-engine.c (engine_parse_namespace): Updated to use the public function in camel-imap4-utils.c (camel_imap4_engine_finalize): Same. * providers/imap4/camel-imap4-store.c (imap4_construct): Setup and load the store summary. (camel_imap4_store_finalize): Unref the store summary. (imap4_get_folder): Implemented offline support. (imap4_folder_utf7_name): Pass the summary to get_delim rather than the engine. (imap4_create_folder): Same. (imap4_reconnect): Update the namespaces on the store summary. (connect_to_server): Update the store summary capabilities. * providers/imap4/camel-imap4-utils.c (camel_imap4_get_path_delim): Now takes a store-summary rather than an engine so that it will work in offline mode. (camel_imap4_namespace_clear): Moved here from camel-imap4-engine.c (camel_imap4_namespace_list_copy): New convenience function. (camel_imap4_namespace_list_free): New. * providers/imap4/camel-imap4-folder.c (camel_imap4_folder_new): Check the return value of summary loading in offline mode (if it fails, we can't get the folder). svn path=/trunk/; revision=27730
* updated commentJeffrey Stedfast2004-10-211-0/+1
| | | | svn path=/trunk/; revision=27650
* kill cast as lvalue warning.Not Zed2004-10-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-10-13 Not Zed <NotZed@Ximian.com> * providers/imap4/camel-imap4-folder.c (camel_imap4_folder_new) (imap4_sync_changes, imap4_sync): * providers/imap4/camel-imap4-summary.c (untagged_fetch_all): kill cast as lvalue warning. * camel-string-utils.h: add prototype for camel_toupper. * providers/imap4/camel-imap4-utils.c: * providers/imap4/camel-imap4-summary.c: * providers/imap4/camel-imap4-folder.c: * providers/imap4/camel-imap4-engine.c: * providers/imap4/camel-imap4-command.c: * providers/imap4/camel-imap4-store.c: include camel-i18n.h. 2004-10-12 Not Zed <NotZed@Ximian.com> ** See bug ??? * providers/nntp/camel-nntp-store.c (connect_to_server): if we have a username, try to authenticate before doing anything else. ** See bug #67895. * providers/nntp/camel-nntp-summary.c (add_range_xover) (add_range_head): use raw_command_auth since we might need auth here. * providers/nntp/camel-nntp-store.c (camel_nntp_raw_command_auth): new almost-raw command that also does auth. (xover_setup, connect_to_server, camel_nntp_command): use raw_command_auth since we might need auth here. 2004-10-12 Not Zed <NotZed@Ximian.com> ** See bug #67898 and probably others. * providers/imapp/camel-imapp-store.c (connect_to_server): * providers/pop3/camel-pop3-store.c (connect_to_server_wrapper): * providers/imap4/camel-imap4-store.c (connect_to_server_wrapper): * providers/imap/camel-imap-store.c (connect_to_server_wrapper): * providers/nntp/camel-nntp-store.c (connect_to_server_wrapper): * providers/smtp/camel-smtp-transport.c (connect_to_server_wrapper): Fallback to hard-coded port number if the name lookup fails and no port was supplied. svn path=/trunk/; revision=27562
* Pass a reconnect func.Jeffrey Stedfast2004-08-041-1/+21
| | | | | | | | | | | | | 2004-08-03 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-store.c (imap4_construct): Pass a reconnect func. * providers/imap4/camel-imap4-engine.c (camel_imap4_engine_iterate): Reconnect if needed. (camel_imap4_engine_new): Now takes a reconnect func. svn path=/trunk/; revision=26813
* This needs to prequeue the CAPABILITY command rather than queue itJeffrey Stedfast2004-07-311-3/+3
| | | | | | | | | | | | 2004-07-30 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-engine.c (camel_imap4_engine_capability): This needs to prequeue the CAPABILITY command rather than queue it normally for the case of reconnecting. (camel_imap4_engine_namespace): Same. svn path=/trunk/; revision=26781
* fixed sed-o's (s/IMAP44/IMAP4/g)Jeffrey Stedfast2004-07-311-6/+6
| | | | svn path=/trunk/; revision=26780
* Changed to be the same prototype as engine_queue().Jeffrey Stedfast2004-07-281-10/+24
| | | | | | | | | | | | | | | | | | 2004-07-27 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-engine.c (camel_imap4_engine_prequeue): Changed to be the same prototype as engine_queue(). (engine_prequeue_folder_select): Updated. * providers/imap4/camel-imap4-store.c (connect_to_server): Use engine_prequeue() for STARTTLS in case we are reconnecting and already have a command queue. (imap4_try_authenticate): Use prequeue() here too. (imap4_reconnect): Moved all the connect logic in here. (imap4_connect): just lock and call reconnect(). svn path=/trunk/; revision=26748
* Don't instantiate an engine here. Instead, take an engine as an argumentJeffrey Stedfast2004-07-271-19/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-07-26 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-store.c (connect_to_server): Don't instantiate an engine here. Instead, take an engine as an argument (it has a service pointer) and connect using that. Also, if connect fails, don't unref the engine. (connect_to_server_wrapper): Now also takes an engine argument rather than a service argument. (imap4_try_authenticate): Now also takes an engine argument. (imap4_connect): Pass the engine to connect/auth functions rather than the store. (imap4_query_auth_types): Updated. (imap4_disconnect): Don't unref the engine here. (camel_imap4_store_init): Create the engine here. (imap4_get_folder_info): Can't check engine == NULL to know to connect (that was a broken check anyway). * providers/imap4/camel-imap4-engine.c (camel_imap4_engine_new): Now simply takes a service argument rather than a session and url. (camel_imap4_engine_next_token): Set the state to DISCONNECTED. (camel_imap4_engine_eat_line): Same. (camel_imap4_engine_line): Same. (camel_imap4_engine_literal): Same. svn path=/trunk/; revision=26740
* Don't always try and parse a RESP-CODE in the BYE case as the RESP-CODE isJeffrey Stedfast2004-06-111-1/+9
| | | | | | | | | | 2004-06-10 Jeffrey Stedfast <fejj@ximian.com> * providers/imap4/camel-imap4-engine.c (camel_imap4_engine_handle_untagged_1): Don't always try and parse a RESP-CODE in the BYE case as the RESP-CODE is optional. svn path=/trunk/; revision=26297
* If flags does not include FOLDER_INFO_FAST, get the total/unread countsJeffrey Stedfast2004-06-111-164/+0
| | | | | | | | | | | | | | | | | | | | 2004-06-10 Jeffrey Stedfast <fejj@novell.com> * providers/imap4/camel-imap4-store.c (imap4_build_folder_info): If flags does not include FOLDER_INFO_FAST, get the total/unread counts for the folder-info. * providers/imap4/camel-imap4-engine.c (engine_parse_status): Removed. (camel_imap4_engine_handle_untagged_1): Don't handle untagged STATUS responses anymore. Let the STATUS requestor handle them instead. * providers/imap4/camel-imap4-utils.c (camel_imap4_untagged_status): New function to parse untagged status events. svn path=/trunk/; revision=26291
* removed debug printfsJeffrey Stedfast2004-06-051-3/+0
| | | | svn path=/trunk/; revision=26222
* Always just return 0, don't try to PR_Sync() - fsync on a socket causes anJeffrey Stedfast2004-06-051-1/+5
| | | | | | | | | | | | | | | | | | | | | | 2004-06-04 Jeffrey Stedfast <fejj@novell.com> * camel-tcp-stream-ssl.c (stream_flush): Always just return 0, don't try to PR_Sync() - fsync on a socket causes an error. * providers/imap4/camel-imap4-command.c (camel_imap4_command_step): Set exceptions when write/flush fail. * providers/imap4/camel-imap4-engine.c (camel_imap4_engine_take_stream): Set an exception in the case where we get an unexpected greeting from the server. * providers/imap4/camel-imap4-store.c (imap4_create_folder): store->dir_sep no longer exists, so query the engine for the directory separator for the parent_folder. (imap4_build_folder_info): CamelFolderInfo no longer has a path component. svn path=/trunk/; revision=26217
* Defined.Jeffrey Stedfast2004-04-071-1/+1
| | | | | | | | | | | | | | | | 2004-04-06 Jeffrey Stedfast <fejj@ximian.com> * camel-folder-summary.h (CAMEL_FOLDER_SUMMARY_TYPE): Defined. * camel-object.h (CAMEL_OBJECT_TYPE): Fixed. * providers/imap4/camel-imap4-folder.c (camel_imap4_folder_utf7_name): Implemented. * providers/imap4/camel-imap4-store.c (imap4_build_folder_info): Use camel_folder_info_build() to build the folder-info tree. svn path=/trunk/; revision=25345
* Partially implemented. (imap4_get_folder): Implemented.Jeffrey Stedfast2004-03-311-0/+4
| | | | | | | | | | 2004-03-30 Jeffrey Stedfast <fejj@ximian.com> * providers/imap4/camel-imap4-store.c (imap4_get_folder_info): Partially implemented. (imap4_get_folder): Implemented. svn path=/trunk/; revision=25254
* Implemented.Jeffrey Stedfast2004-03-301-0/+1669
2004-03-29 Jeffrey Stedfast <fejj@ximian.com> * providers/imap4/camel-imap4-folder.c (camel_imap4_folder_new): Implemented. * providers/imap4/camel-imap4-engine.c (engine_parse_namespace): If the namespace begins with "INBOX", canonicalise the INBOX portion (ie, make it all caps). * providers/imap4/camel-imap4-store.c (imap4_noop): Implemented. svn path=/trunk/; revision=25237