+#define CTDLEXIT_SHUTDOWN 0 /* Normal shutdown; do NOT auto-restart */
+
/*
* Exit codes 101 through 109 are used for conditions in which
* we deliberately do NOT want the service to automatically
#define CTDLEXIT_OOD 104 /* Out Of Date config - rerun setup */
#define CTDLEXIT_DB 105 /* Unable to initialize database */
#define CTDLEXIT_LIBCITADEL 106 /* Incorrect version of libcitadel */
-
+#define CTDL_EXIT_UNSUP_AUTH 107 /* Unsupported auth mode configured */
int kill_me; /* Set to nonzero to flag for termination */
int client_socket;
int cs_pid; /* session ID */
+ int dont_term; /* for special activities like artv so we don't get killed */
time_t lastcmd; /* time of last command executed */
time_t lastidle; /* For computing idle time */
int redirect_ssl;
#endif
- int buffering;
- char *output_buffer; /* hold output for one big dump */
- int buffer_len;
-
/* A linked list of all instant messages sent to us. */
struct ExpressMessage *FirstExpressMessage;
int disable_exp; /* Set to 1 to disable incoming pages */
char *session_specific_data; /* Used by individual protocol modules */
struct cit_ical *CIT_ICAL; /* calendaring data */
struct ma_info *ma; /* multipart/alternative data */
- const char* ServiceName; /**< whats our actual purpose? */
+ const char *ServiceName; /* readable purpose of this session */
+ void *openid_data; /* Data stored by the OpenID module */
+ char *ldap_dn; /* DN of user when using AUTHMODE_LDAP */
};
typedef struct CitContext t_context;
int version; /* Server-hosted upgrade level */
int fulltext_wordbreaker; /* ID of wordbreaker in use */
long MMfulltext; /* highest message number indexed */
+ int MMdbversion; /* Version of Berkeley DB used on previous server run */
};
extern struct CitContext *ContextList;
S_DIRECTORY,
S_NETCONFIGS,
S_PUBLIC_CLIENTS,
- S_LDAP,
S_FLOORCACHE,
S_DEBUGMEMLEAKS,
S_ATBF,
S_THREAD_LIST,
S_XMPP_QUEUE,
S_SCHEDULE_LIST,
- S_OPENID_ASSOC,
+ S_SINGLE_USER,
+ S_LDAP,
MAX_SEMAPHORES
};
CDB_BIGMSGS, /* larger message bodies */
CDB_FULLTEXT, /* full text search index */
CDB_EUIDINDEX, /* locate msgs by EUID */
+ CDB_USERSBYNUMBER, /* index of users by number */
+ CDB_OPENID, /* associates OpenIDs with users */
MAXCDB /* total number of CDB's defined */
};