New field in user record "lastproc_inboxrules" which keeps track of the most recent...
authorArt Cancro <ajc@citadel.org>
Sat, 28 Nov 2020 15:40:13 +0000 (10:40 -0500)
committerArt Cancro <ajc@citadel.org>
Sat, 28 Nov 2020 15:40:13 +0000 (10:40 -0500)
citadel/citadel.h
citadel/modules/migrate/serv_migrate.c

index fe109090c63502f96e674e99a0999b3e8066da3d..f41cf272e97660e3368671b3c54fee5fae27acfc 100644 (file)
@@ -97,7 +97,7 @@ struct march {
  */
 typedef struct ctdluser ctdluser;
 struct ctdluser {                      // User record
-       int version;                    // Cit vers. which created this rec
+       int version;                    // Citadel version which created this record
        uid_t uid;                      // Associate with a unix account?
        char password[32];              // password
        unsigned flags;                 // See US_ flags below
@@ -112,6 +112,7 @@ struct ctdluser {                   // User record
        long msgnum_pic;                // msgnum of user's avatar (photo)
        char emailaddrs[512];           // Internet email addresses
        long msgnum_inboxrules;         // msgnum of user's inbox filtering rules
+       long lastproc_inboxrules;       // msgnum of last message filtered
 };
 
 
index d982dd2d2d277013d9c7aed82842545ec669b9c8..ed3ea391c88a478661bbf132de8496d1545c6efa 100644 (file)
@@ -137,6 +137,7 @@ void migr_export_users_backend(char *username, void *data) {
        cprintf("<u_msgnum_pic>%ld</u_msgnum_pic>\n", u.msgnum_pic);
        cprintf("<u_emailaddrs>%s</u_emailaddrs>\n", u.emailaddrs);
        cprintf("<u_msgnum_inboxrules>%ld</u_msgnum_inboxrules>\n", u.msgnum_inboxrules);
+       cprintf("<u_lastproc_inboxrules>%ld</u_lastproc_inboxrules>\n", u.lastproc_inboxrules);
        client_write(HKEY("</user>\n"));
 }
 
@@ -590,6 +591,7 @@ int migr_userrecord(void *data, const char *el)
        else if (!strcasecmp(el, "u_msgnum_pic"))               usbuf.msgnum_pic = atol(ChrPtr(migr_chardata));
        else if (!strcasecmp(el, "u_emailaddrs"))               safestrncpy(usbuf.emailaddrs, ChrPtr(migr_chardata), sizeof usbuf.emailaddrs);
        else if (!strcasecmp(el, "u_msgnum_inboxrules"))        usbuf.msgnum_inboxrules = atol(ChrPtr(migr_chardata));
+       else if (!strcasecmp(el, "u_lastproc_inboxrules"))      usbuf.lastproc_inboxrules = atol(ChrPtr(migr_chardata));
        else return 0;
        return 1;
 }