]> code.citadel.org Git - citadel.git/blobdiff - citadel/context.h
Replaced cached_msglist array with a btree persistent through the session.
[citadel.git] / citadel / context.h
index 679f90e99b88cb9d5244f0796a1f0b3496999190..f7f17b6245064625d0f96806ff03c46b7cb26891 100644 (file)
@@ -41,7 +41,7 @@ struct CitContext {
        struct CitContext *next;        /* Link to next session in the list */
 
        int cs_pid;             /* session ID */
-       int dont_term;          /* for special activities like artv so we don't get killed */
+       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 */
        CCState state;          /* thread state (see CON_ values below) */
@@ -109,10 +109,6 @@ struct CitContext {
        struct ctdluser user;   /* Database record buffers */
        struct ctdlroom room;
 
-       /* Beginning of cryptography - session nonce */
-       char cs_nonce[NONCE_SIZE];      /* The nonce for this session's next auth transaction */
-
-
        /* A linked list of all instant messages sent to us. */
        struct ExpressMessage *FirstExpressMessage;
        int disable_exp;        /* Set to 1 to disable incoming pages */
@@ -135,10 +131,12 @@ struct CitContext {
        void *openid_data;                      /* Data stored by the OpenID module */
        char *ldap_dn;                          /* DN of user when using AUTHMODE_LDAP */
 
-
        void (*h_command_function) (void) ;     /* service command function */
        void (*h_async_function) (void) ;       /* do async msgs function */
        void (*h_greeting_function) (void) ;    /* greeting function for session startup */
+
+       struct seenit *cached_msglist;          /* results of the previous CtdlForEachMessage() */
+       int cached_num_msgs;
 };
 
 typedef struct CitContext CitContext;