aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-provider.h
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2000-11-04 02:22:34 +0800
committerDan Winship <danw@src.gnome.org>2000-11-04 02:22:34 +0800
commit5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c (patch)
tree74b9a226512a2e46391933c1f6a2fd05e1bb4811 /camel/camel-provider.h
parentd428113c3aadafa3a23d27ed05954c49c0af84b0 (diff)
downloadgsoc2013-evolution-5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c.tar
gsoc2013-evolution-5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c.tar.gz
gsoc2013-evolution-5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c.tar.bz2
gsoc2013-evolution-5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c.tar.lz
gsoc2013-evolution-5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c.tar.xz
gsoc2013-evolution-5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c.tar.zst
gsoc2013-evolution-5a4fa8505d6a81836da77e2cc07e5fbd0cd21b7c.zip
Add an "url_flags" field to CamelProvider. Move the CAMEL_SERVICE_URL_*
* camel-provider.h: Add an "url_flags" field to CamelProvider. Move the CAMEL_SERVICE_URL_* defines here and remove the SERVICE_ part of the name. * camel-service.h: Remove CAMEL_SERVICE_URL_* flags and service->url_flags field. * camel-service.c (check_url, get_path): Get URL flags from service->provider, update for changed flag names. * providers/*/camel-*-provider.c: Add URL flags to provider structures. * providers/*/camel-*-{store,transport}.c, camel-remote-store.c: Remove service->url_flags initialization. svn path=/trunk/; revision=6370
Diffstat (limited to 'camel/camel-provider.h')
-rw-r--r--camel/camel-provider.h24
1 files changed, 23 insertions, 1 deletions
diff --git a/camel/camel-provider.h b/camel/camel-provider.h
index 00375029db..f5a434cde5 100644
--- a/camel/camel-provider.h
+++ b/camel/camel-provider.h
@@ -55,6 +55,28 @@ extern char *camel_provider_type_name[CAMEL_NUM_PROVIDER_TYPES];
#define CAMEL_PROVIDER_IS_SOURCE (1 << 1)
#define CAMEL_PROVIDER_IS_STORAGE (1 << 2)
+
+/* Flags for url_flags. "ALLOW" means the config dialog will let
+ * the user configure it. "NEED" implies "ALLOW" but means the user
+ * must configure it. Service code can assume that any url part
+ * for which it has set the NEED flag will be set when the service
+ * is created.
+ */
+#define CAMEL_URL_ALLOW_USER (1 << 0)
+#define CAMEL_URL_ALLOW_AUTH (1 << 1)
+#define CAMEL_URL_ALLOW_PASSWORD (1 << 2)
+#define CAMEL_URL_ALLOW_HOST (1 << 3)
+#define CAMEL_URL_ALLOW_PORT (1 << 4)
+#define CAMEL_URL_ALLOW_PATH (1 << 5)
+
+#define CAMEL_URL_NEED_USER (1 << 6 | 1 << 0)
+#define CAMEL_URL_NEED_AUTH (1 << 7 | 1 << 1)
+#define CAMEL_URL_NEED_PASSWORD (1 << 8 | 1 << 2)
+#define CAMEL_URL_NEED_HOST (1 << 9 | 1 << 3)
+#define CAMEL_URL_NEED_PORT (1 << 10 | 1 << 4)
+#define CAMEL_URL_NEED_PATH (1 << 11 | 1 << 5)
+
+
typedef struct {
/* Provider name used in CamelURLs. */
char *protocol;
@@ -76,7 +98,7 @@ typedef struct {
*/
char *domain;
- int flags;
+ int flags, url_flags;
CamelType object_types [CAMEL_NUM_PROVIDER_TYPES];