-/*
- * Main Citadel header file
- *
- * Copyright (c) 1987-2018 by the citadel.org team
- *
- * This program is open source software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 3.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
+// Main Citadel header file
+//
+// Copyright (c) 1987-2021 by the citadel.org team
+//
+// This program is open source software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
/* system customizations are in sysconfig.h */
/*
* Text description of this software
- * (We used to define this ourselves, but why bother when
- * the GNU build tools do it for us?)
+ * (We used to define this ourselves, but why bother when the build tools do it for us?)
*/
#define CITADEL PACKAGE_STRING
-#define REV_LEVEL 921 // This version
+#define REV_LEVEL 945 // This version
#define REV_MIN 591 // Oldest compatible database
-#define EXPORT_REV_MIN 760 // Oldest compatible export files
-#define LIBCITADEL_MIN 920 // Minimum required version of libcitadel
-
-#define SERVER_TYPE 0 // zero for stock Citadel; other developers please
- // obtain SERVER_TYPE codes for your implementations
+#define EXPORT_REV_MIN 931 // Oldest compatible export files
+#define LIBCITADEL_MIN 931 // Minimum required version of libcitadel
+#define SERVER_TYPE 0 // zero for stock Citadel; other developers please obtain SERVER_TYPE codes for your implementations
#ifdef LIBCITADEL_VERSION_NUMBER
#if LIBCITADEL_VERSION_NUMBER < LIBCITADEL_MIN
#endif
#endif
+/*
+ * This is the user name and password for the default administrator account
+ * that is created when Citadel Server is started with an empty database.
+ */
+#define DEFAULT_ADMIN_USERNAME "admin"
+#define DEFAULT_ADMIN_PASSWORD "citadel"
+
/* Various length constants */
#define ROOMNAMELEN 128 /* The size of a roomname string */
#define EXPIRE_AGE 3 // Expire messages after n days
-/*
- * This struct stores a list of rooms with new messages which the client
- * fetches from the server. This allows the client to "march" through
- * relevant rooms without having to ask the server each time where to go next.
- */
-typedef struct march march;
-struct march {
- struct march *next;
- char march_name[ROOMNAMELEN];
- unsigned int march_flags;
- char march_floor;
- char march_order;
- unsigned int march_flags2;
- int march_access;
-};
-
-
/*
* User records.
*/
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
long msgnum_bio; // msgnum of user's profile (bio)
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
};
#define MES_ANONONLY 66 // "****" header
#define MES_ANONOPT 67 // "Anonymous" header
-#define MES_ERROR (-1) // Can't send message due to bad address
-#define MES_LOCAL 0 // Local message, do no network processing
-#define MES_INTERNET 1 // Convert msg and send as Internet mail
-
/****************************************************************************/
/*
/* number of items which may be handled by the CONF command */
#define NUM_CONFIGS 71
-#define TRACE syslog(LOG_DEBUG, "\033[31mCheckpoint: %s : %d\033[0m", __FILE__, __LINE__)
+#define TRACE syslog(LOG_DEBUG, "\033[7m Checkpoint: %s : %d \033[0m", __FILE__, __LINE__)
#ifndef LONG_MAX
#define LONG_MAX 2147483647L
*/
#define AUTHMODE_NATIVE 0 // Native (self-contained or "black box")
#define AUTHMODE_HOST 1 // Authenticate against the host OS user database
-#define AUTHMODE_LDAP 2 // Authenticate against an LDAP server with RFC 2307 schema
-#define AUTHMODE_LDAP_AD 3 // Authenticate against non-standard MS Active Directory LDAP
+#define AUTHMODE_LDAP 2 // Authenticate using LDAP server with RFC 2307 schema
+#define AUTHMODE_LDAP_AD 3 // Authenticate using LDAP server with Active Directory schema
#ifdef __cplusplus
}
#endif
+#if __GNUC__ >= 8
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-truncation"
+#endif
+
#endif /* CITADEL_H */