#define CITADEL_H
/* #include <dmalloc.h> uncomment if using dmalloc */
-/* Build Citadel with the calendar service only if the header *and*
- * library for libical are both present.
- */
-#ifdef HAVE_LIBICAL
-#ifdef HAVE_ICAL_H
-#define CITADEL_WITH_CALENDAR_SERVICE 1
-#endif
-#endif
-
#include "sysdep.h"
#include <limits.h>
#include "sysconfig.h"
* usually more strict because you're not really supposed to dump/load and
* upgrade at the same time.
*/
-#define REV_LEVEL 725 /* This version */
+#define REV_LEVEL 741 /* This version */
#define REV_MIN 591 /* Oldest compatible database */
-#define EXPORT_REV_MIN 725 /* Oldest compatible export files */
-#define LIBCITADEL_MIN 103 /* Minimum required version of libcitadel */
+#define EXPORT_REV_MIN 737 /* Oldest compatible export files */
+#define LIBCITADEL_MIN 741 /* Minimum required version of libcitadel */
#define SERVER_TYPE 0 /* zero for stock Citadel; other developers please
obtain SERVER_TYPE codes for your implementations */
+#ifdef LIBCITADEL_VERSION_NUMBER
+#if LIBCITADEL_VERSION_NUMBER < LIBCITADEL_MIN
+#error libcitadel is too old. Please upgrade it before continuing.
+#endif
+#endif
+
/* Various length constants */
#define UGLISTLEN 100 /* you get a ungoto list of this size */
/*
* Message expiration policy stuff
*/
+typedef struct ExpirePolicy ExpirePolicy;
struct ExpirePolicy {
/*
#include "datadefinitions.h"
* fetches from the server. This allows the client to "march" through
* relevant rooms without having to ask the server each time where to go next.
*/
+typedef struct march march;
struct march {
/*
#include "datadefinitions.h"
/*
* User records.
*/
+typedef struct ctdluser ctdluser;
struct ctdluser { /* User record */
/*
#include "datadefinitions.h"
/*
* Room records.
*/
+typedef struct ctdlroom ctdlroom;
struct ctdlroom {
/*
#include "datadefinitions.h"
/*
* Floor record. The floor number is implicit in its location in the file.
*/
+typedef struct floor floor;
struct floor {
/*
#include "datadefinitions.h"
#define FILTERLIST "application/x-citadel-filter-list"
#define SIEVECONFIG "application/x-citadel-sieve-config"
-#define TRACE lprintf(CTDL_DEBUG, "Checkpoint: %s, %d\n", __FILE__, __LINE__)
+#define TRACE CtdlLogPrintf(CTDL_DEBUG, "Checkpoint: %s, %d\n", __FILE__, __LINE__)
#ifndef LONG_MAX
#define LONG_MAX 2147483647L
/*
* Authentication modes
*/
-#define AUTHMODE_NATIVE 0 /* native Citadel authentication */
-#define AUTHMODE_HOST 1 /* host integrated */
+#define AUTHMODE_NATIVE 0 /* Native (self-contained or "black box") */
+#define AUTHMODE_HOST 1 /* Authenticate against the host OS user database */
+#define AUTHMODE_LDAP 2 /* External LDAP authentication (NOT IMPLEMENTED) */
#ifdef __cplusplus
}