-/* citadel.h
+/*
+ * $Id$
+ *
* main Citadel/UX header file
* see copyright.txt for copyright information
- * $Id$
*/
/* system customizations are in sysconfig.h */
+
+#ifndef CITADEL_H
+#define CITADEL_H
+
#include "sysdep.h"
#include "sysconfig.h"
#include "ipcdef.h"
-#define CITADEL "Citadel/UX 5.70b1"
-#define REV_LEVEL 570
+
+#define CITADEL "Citadel/UX 5.80" /* Text description of this software */
+
+/*
+ * REV_LEVEL is the current version number (multiplied by 100 to avoid having
+ * to fiddle with the decimal). REV_MIN is the oldest version of Citadel
+ * whose data files are compatible with the current version. If the data files
+ * are older than REV_MIN, none of the programs will work until the setup
+ * program is run again to bring things up to date.
+ */
+#define REV_LEVEL 580 /* This version */
+#define REV_MIN 570 /* Oldest compatible version */
+
#define SERVER_TYPE 0 /* zero for stock Citadel/UX; other developers please
obtain SERVER_TYPE codes for your implementations */
#define tolower(x) ( ((x>='A')&&(x<='Z')) ? (x+'a'-'A') : x )
#define NEW_CONFIG
-#define strucmp(lstr,rstr) struncmp(lstr,rstr,32767)
-
/*
* The only typedef we do is an 8-bit unsigned, for screen dimensions.
* All other defs are done using standard C types. The code assumes that
*/
typedef unsigned char CIT_UBYTE;
-#define ROOMNAMELEN 128
+/* Various length constants */
+
+#define ROOMNAMELEN 128 /* The size of the roomname structure */
+#define NONCE_SIZE 128 /* Added by <bc> to allow for APOP auth
+ * it is BIG becuase there is a hostname
+ * in the nonce, as per the APOP RFC.
+ */
+
+#define USERNAME_SIZE 32 /* The size of a username string */
/*
* Message expiration policy stuff
char c_fqdn[64]; /* Fully Qualified Domain Name */
char c_humannode[21]; /* Long name of system */
char c_phonenum[16]; /* Dialup number of system */
- int c_bbsuid; /* UID of the bbs-only user */
+ uid_t c_bbsuid; /* UID of the bbs-only user */
char c_creataide; /* room creator = room aide flag */
int c_sleeping; /* watchdog timer setting */
char c_initax; /* initial access level */
int c_max_workers; /* Upper limit on number of threads */
int c_pop3_port; /* POP3 listener port (usually 110) */
int c_smtp_port; /* SMTP listener port (usually 25) */
+ int c_default_filter; /* Default moderation filter level */
+ int c_aide_zap; /* Are Aides allowed to zap rooms? */
+ int c_imap_port; /* IMAP listener port (usually 143) */
};
#define NODENAME config.c_nodename
char fullname[64]; /* Name for Citadel messages & mail */
CIT_UBYTE USscreenwidth; /* Screen width (for textmode users)*/
CIT_UBYTE USscreenheight; /* Screen height(for textmode users)*/
+ char moderation_filter; /* Moderation filter level */
};
/* keepalives */
#define KA_NO 0 /* no keepalives */
#define KA_YES 1 /* full keepalives */
-#define KA_CHAT 2 /* half keepalives (for chat mode) */
/* for <;G>oto and <;S>kip commands */
#define GF_GOTO 0 /* <;G>oto floor mode */
*/
#define SPOOLMIME "application/x-citadel-delivery-list"
#define INTERNETCFG "application/x-citadel-internet-config"
+#define IGNETCFG "application/x-citadel-ignet-config"
#define TRACE lprintf(9, "Checkpoint: %s, %d\n", __FILE__, __LINE__)
+
+#ifndef LONG_MAX
+#define LONG_MAX 2147483647L
+#endif
+
+#endif /* CITADEL_H */