-/****************************************************************************/
-/* YOUR SYSTEM CONFIGURATION */
-/* Set all the values in this file appropriately BEFORE compiling any of the*/
-/* C programs. If you are upgrading from an older version of Citadel/UX, it */
-/* is vitally important that the #defines which are labelled "structure size*/
-/* variables" are EXACTLY the same as they were in your old system, */
-/* otherwise your files will be munged beyond repair. */
-/****************************************************************************/
-
-/* NOTE THAT THIS FILE IS MUCH, MUCH SMALLER THAN IT USED TO BE.
- * That's because the setup program now creates a citadel.config file with
- * all of the settings that don't really need to be in a header file.
- * You can now run setup whenever you want, and change lots of parameters
- * without having to recompile the whole system!
+/*
+ * NOTE: this file is for client software tuning, not customization. For
+ * making changes to the behavior of the client, you want to edit citadel.rc,
+ * not this file.
*/
/*
#define CHATLOG "/dev/null"
/*
- * SLEEPING refers to the watchdog timer. If a user sits idle without typing
- * anything for this number of seconds, the session will automatically be
- * logged out. Set it to zero to disable this feature.
- * Note: the watchdog timer only functions when the parent is 1 (init) - in
- * other words, only if Citadel is the login shell.
+ * Logging level to use if none is specified on the command line.
+ * Note that this will suppress messages before they even get to syslog().
*/
-#define SLEEPING 180
+#define DEFAULT_VERBOSITY 7
-/*
- * S_KEEPALIVE is also a watchdog timer, except it is used to send "keep
- * alive" messages to the server to prevent the server from assuming the
- * client is dead and terminating the session. 30 seconds is the recommended
- * value; I can't think of any good reason to change it.
+/*
+ * NLI is the string that shows up in a <W>ho's online listing for sessions
+ * that are active, but for which no user has yet authenticated.
*/
-#define S_KEEPALIVE 30
+#define NLI "(not logged in)"
/*
- * This is the command that gets executed when a user hits <E>nter message:
- * presses the <E>nter message key. The possible values are:
- * 46 - .<E>nter message with <E>ditor
- * 4 - .<E>nter <M>essage
- * 36 - .<E>nter message with <A>scii
- * Normally, this value will be set to 4, to cause the <E>nter message
- * command to run Citadel's built-in editor. However, if you have an external
- * editor installed, and you want to make it the default, set this to 46
- * to make it use your editor by default.
+ * Maximum number of floors on the system.
+ * WARNING! *Never* change this value once your system is up; THINGS WILL DIE!
+ * Also, do not set it higher than 127.
*/
-#define DEFAULT_ENTRY 4
+#define MAXFLOORS 16
+/*
+ * Standard buffer size for string datatypes. DO NOT CHANGE! Not only does
+ * there exist a minimum buffer size for certain protocols (such as IMAP), but
+ * fixed-length buffers are now stored in some of the data structures on disk,
+ * so if you change the buffer size you'll fux0r your database.
+ */
+#define SIZ 4096
+
+/*
+ * If the body of a message is beyond this size, it will be stored in
+ * a separate table.
+ */
+#define BIGMSG 1024
+
+/*
+ * SMTP delivery retry rules (all values are in seconds)
+ *
+ * If delivery of a message via SMTP is unsuccessful, Citadel will try again
+ * after SMTP_RETRY_INTERVAL seconds. This interval will double after each
+ * unsuccessful delivery, up to a maximum of SMTP_RETRY_MAX seconds. If no
+ * successful delivery has been accomplished after SMTP_GIVE_UP seconds, the
+ * message will be returned to its sender.
+ */
+#define SMTP_RETRY_INTERVAL 300 /* 5 minutes */
+#define SMTP_RETRY_MAX 43200 /* 12 hours */
+#define SMTP_GIVE_UP 432000 /* 5 days */
+
+/*
+ * Who bounced messages appear to be from
+ */
+#define BOUNCESOURCE "Citadel Mail Delivery Subsystem"
-/*** STRUCTURE SIZE VARIABLES ***/
+/*
+ * This variable defines the amount of network spool data that may be carried
+ * in one server transfer command. For some reason, some networks get hung
+ * up on larger packet sizes. We don't know why. In any case, never set the
+ * packet size higher than 4096 or your server sessions will crash.
+ */
+#define IGNET_PACKET_SIZE 4000
-/* You may NOT change these values once you set up your system. */
-#define MAXROOMS 128 /* Number of rooms in system */
-#define MAXFLOORS 16 /* Do not set higher than 127 */
-#define MAILSLOTS 35 /* Number of mail slots per user */
-#define MSGSPERRM 150 /* Messages per room */
-#define CALLLOG 1000 /* Number of entries in call log */
-/* Do not set MAILSLOTS higher than MSGSPERRM */
+/*
+ * The names of rooms which are automatically created by the system
+ */
+#define BASEROOM "Lobby"
+#define MAILROOM "Mail"
+#define SENTITEMS "Sent Items"
+#define AIDEROOM "Aide"
+#define USERCONFIGROOM "My Citadel Config"
+#define USERCALENDARROOM "Calendar"
+#define USERTASKSROOM "Tasks"
+#define USERCONTACTSROOM "Contacts"
+#define USERNOTESROOM "Notes"
+#define USERDRAFTROOM "Drafts"
+#define USERTRASHROOM "Trash"
+#define PAGELOGROOM "Sent/Received Pages"
+#define SYSCONFIGROOM "Local System Configuration"
+#define SMTP_SPOOLOUT_ROOM "__CitadelSMTPspoolout__"
+#define FNBL_QUEUE_ROOM "__CitadelFNBLqueue__"
+/*
+ * Where we keep messages containing the vCards that source our directory. It
+ * makes no sense to change this, because you'd have to change it on every
+ * system on the network. That would be stupid.
+ */
+#define ADDRESS_BOOK_ROOM "Global Address Book"
-/* These may be changed at any time. */
-#define MAXUCACHE 10 /* Entries in server user cache */
+/*
+ * How long (in seconds) to retain message entries in the use table
+ */
+#define USETABLE_RETAIN 864000L /* 10 days */
+#define USETABLE_ANTIEXPIRE 345600l /* 4 days */
+#define USETABLE_ANTIEXPIRE_HIRES 86400l /* 1 day */
+/*
+ * The size of per-thread stacks. If set too low, citserver will randomly crash.
+ */
+#define THREADSTACKSIZE 0x100000
-/*** END OF STRUCTURE SIZE VARIABLES ***/
+/*
+ * How many messages may the full text indexer scan before flushing its
+ * tables to disk?
+ */
+#define FT_MAX_CACHE 2500