aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/imap/camel-imap-store.h
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@helixcode.com>2000-07-29 01:41:15 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2000-07-29 01:41:15 +0800
commit42ea927055d4462b9f396092e2791a4db34ce6ec (patch)
tree0976fd9c6b733e261ffc01c7ae201380ba85d873 /camel/providers/imap/camel-imap-store.h
parentf0e2a902fabd26df037e567ba17adb6060247aff (diff)
downloadgsoc2013-evolution-42ea927055d4462b9f396092e2791a4db34ce6ec.tar
gsoc2013-evolution-42ea927055d4462b9f396092e2791a4db34ce6ec.tar.gz
gsoc2013-evolution-42ea927055d4462b9f396092e2791a4db34ce6ec.tar.bz2
gsoc2013-evolution-42ea927055d4462b9f396092e2791a4db34ce6ec.tar.lz
gsoc2013-evolution-42ea927055d4462b9f396092e2791a4db34ce6ec.tar.xz
gsoc2013-evolution-42ea927055d4462b9f396092e2791a4db34ce6ec.tar.zst
gsoc2013-evolution-42ea927055d4462b9f396092e2791a4db34ce6ec.zip
Get message count when STATUS is not available. (imap_init):
2000-07-28 Jeffrey Stedfast <fejj@helixcode.com> * providers/imap/camel-imap-folder.c (imap_get_message_count_internal): Get message count when STATUS is not available. (imap_init): folder->has_search_capability is required for IMAP so should always be set to TRUE (is currently being set to FALSE as I've not yet implemented SEARCH support). (camel_imap_folder_changed): Seem to have fixed my optimization hack 2000-07-28 Jon K Hellan <hellan@acm.org> * providers/imap/camel-imap-store.h (CamelImapServerLevel): New enum. (CamelImapStore): Added server_level and has_status_capability members. * providers/imap/camel-imap-store.c (imap_connect): Detect IMAP4REV1, IMAP4 and STATUS in capability response. * providers/imap/camel-imap-folder.c (imap_get_message_count_internal): Use STATUS only if server supports it. TODO: Get message count when STATUS not supported. (imap_get_message, imap_get_summary_internal, imap_get_message_info_internal): Handle IMAP4 as well. (imap_protocol_get_summary_specifier): New function: Make a data item specifier for the header lines we need, appropriate to the server level. svn path=/trunk/; revision=4406
Diffstat (limited to 'camel/providers/imap/camel-imap-store.h')
-rw-r--r--camel/providers/imap/camel-imap-store.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/camel/providers/imap/camel-imap-store.h b/camel/providers/imap/camel-imap-store.h
index e1bdc86a9c..b8bb19f31c 100644
--- a/camel/providers/imap/camel-imap-store.h
+++ b/camel/providers/imap/camel-imap-store.h
@@ -40,24 +40,29 @@ extern "C" {
#define CAMEL_IMAP_STORE_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), CAMEL_IMAP_STORE_TYPE, CamelImapStoreClass))
#define IS_CAMEL_IMAP_STORE(o) (GTK_CHECK_TYPE((o), CAMEL_IMAP_STORE_TYPE))
+typedef enum {
+ IMAP_LEVEL_UNKNOWN,
+ IMAP_LEVEL_IMAP4,
+ IMAP_LEVEL_IMAP4REV1
+} CamelImapServerLevel;
typedef struct {
CamelStore parent_object;
-
+
CamelFolder *current_folder;
CamelStream *istream, *ostream;
guint32 command;
-
- gboolean has_search_capability;
-
+
+ CamelImapServerLevel server_level;
+ gboolean has_status_capability;
+
gchar *dir_sep;
-
+
guint timeout_id;
} CamelImapStore;
-
typedef struct {
CamelStoreClass parent_class;