aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-provider.h
diff options
context:
space:
mode:
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];