/* citadel.h
* main Citadel/UX header file
* see copyright.txt for copyright information
+ * $Id$
*/
/* system customizations are in sysconfig.h */
#include "sysdep.h"
#include "sysconfig.h"
#include "ipcdef.h"
-#define CITADEL "Citadel/UX DR19981026"
-#define REV_LEVEL 511
+#define CITADEL "Citadel/UX 5.50"
+#define REV_LEVEL 550
#define SERVER_TYPE 0 /* zero for stock Citadel/UX; other developers please
obtain SERVER_TYPE codes for your implementations */
char c_regiscall; /* call number to register on */
char c_twitdetect; /* twit detect flag */
char c_twitroom[ROOMNAMELEN]; /* twit detect msg move to room */
- int c_defent; /* command generated by <E> key */
char c_moreprompt[80]; /* paginator prompt */
char c_restrict; /* restrict Internet mail flag */
long c_msgbase; /* size of message base */
int c_port_number; /* TCP port to run the server on */
int c_ipgm_secret; /* Internal program authentication */
struct ExpirePolicy c_ep; /* System default msg expire policy */
+ int c_userpurge; /* System default user purge (days) */
+ int c_roompurge; /* System default room purge (days) */
+ char c_logpages[ROOMNAMELEN]; /* Room to log pages to (or not) */
};
#define NODENAME config.c_nodename
char USzip[10]; /* ZIP code */
char USphone[11]; /* Voice telephone number */
char USemail[32]; /* E-mail address (elsewhere) */
+ int USuserpurge; /* Purge time (in days) for user */
};
-/* this is a mask for all of the bits the user is allowed to change */
-#define US_USER_SET (US_LASTOLD | US_EXPERT | US_UNLISTED | \
- US_NOPROMPT | US_DISAPPEAR | US_PAGINATOR | US_FLOORS)
-
/****************************************************************************
* This is the control record for the message base...
*/
long MMhighest; /* highest message number in file */
unsigned MMflags; /* Global system flags */
long MMnextuser; /* highest user number on system */
+ long MMnextroom; /* highest room number on system */
};
/* Bits which may appear in CitControl.MMflags. Note that these don't
char QRfloor; /* Which floor this room is on */
time_t QRmtime; /* Date/time of last post */
struct ExpirePolicy QRep; /* Message expiration policy */
+ long QRnumber; /* Globally unique room number */
};
#define AIDEROOM "Aide"
+/*
+ * This structure is used to hold all of the fields of a message
+ * during conversion, processing, or whatever.
+ */
+struct minfo {
+ char A[512];
+ char B[512];
+ char C[512];
+ char D[512];
+ char E[512];
+ char G[512];
+ char H[512];
+ long I;
+ char N[512];
+ char O[512];
+ char P[512];
+ char R[512];
+ char S[512];
+ long T;
+ char U[512];
+ char nexthop[512];
+ };