X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fserver%2Fcitadel.h;h=43574b8aac222146b6688cccb23a2b6ab4148234;hb=f8fb91893d1a4e9416b9238e4b695718c7537831;hp=5e80d65481fd8a696255e4f3cde4e00f2acbb0d8;hpb=f6fcf350671e3661f8f22696eb35133014ab6a14;p=citadel.git diff --git a/citadel/server/citadel.h b/citadel/server/citadel.h index 5e80d6548..43574b8aa 100644 --- a/citadel/server/citadel.h +++ b/citadel/server/citadel.h @@ -1,20 +1,18 @@ // Main Citadel header file // -// Copyright (c) 1987-2021 by the citadel.org team +// Copyright (c) 1987-2022 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 */ +// This program is open source software. Use, duplication, or disclosure +// is subject to the terms of the GNU General Public License, version 3. +// The program is distributed without any warranty, expressed or implied. #ifndef CITADEL_H #define CITADEL_H -/* #include uncomment if using dmalloc */ + +// Suppress these compiler warnings +#pragma GCC diagnostic ignored "-Wcast-qual" +#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers" +#pragma GCC diagnostic ignored "-Wformat-truncation" #include "sysdep.h" #include @@ -26,16 +24,14 @@ extern "C" { #endif -/* - * Text description of this software - * (We used to define this ourselves, but why bother when the build tools do it for us?) - */ +// Text description of this software +// (We used to define this ourselves, but why bother when the build tools do it for us?) #define CITADEL PACKAGE_STRING -#define REV_LEVEL 951 // This version +#define REV_LEVEL 953 // This version #define REV_MIN 591 // Oldest compatible database #define EXPORT_REV_MIN 931 // Oldest compatible export files -#define LIBCITADEL_MIN 931 // Minimum required version of libcitadel +#define LIBCITADEL_MIN 951 // 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 @@ -44,22 +40,17 @@ extern "C" { #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. - */ +// 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 USERNAME_SIZE 64 /* The size of a username string */ -#define MAX_EDITORS 5 /* number of external editors supported ; must be at least 1 */ +// Various length constants +#define ROOMNAMELEN 128 // The size of a roomname string +#define USERNAME_SIZE 64 // The size of a username string +#define MAX_EDITORS 5 // number of external editors supported ; must be at least 1 -/* - * Message expiration policy stuff - */ +// Message expiration policy stuff typedef struct ExpirePolicy ExpirePolicy; struct ExpirePolicy { int expire_mode; @@ -71,10 +62,7 @@ struct ExpirePolicy { #define EXPIRE_NUMMSGS 2 // Keep only latest n messages #define EXPIRE_AGE 3 // Expire messages after n days - -/* - * User records. - */ +// User records. typedef struct ctdluser ctdluser; struct ctdluser { // User record int version; // Citadel version which created this record @@ -95,14 +83,10 @@ struct ctdluser { // User record long lastproc_inboxrules; // msgnum of last message filtered }; - -/* Bits which may appear in MMflags. - */ +// Bits which may appear in MMflags. #define MM_VALID 4 // New users need validating -/* - * Room records. - */ +// Room records. typedef struct ctdlroom ctdlroom; struct ctdlroom { char QRname[ROOMNAMELEN]; // Name of room @@ -123,24 +107,17 @@ struct ctdlroom { long msgnum_pic; // msgnum of room picture or icon }; -/* Private rooms are always flagged with QR_PRIVATE. If neither QR_PASSWORDED - * or QR_GUESSNAME is set, then it is invitation-only. Passworded rooms are - * flagged with both QR_PRIVATE and QR_PASSWORDED while guess-name rooms are - * flagged with both QR_PRIVATE and QR_GUESSNAME. NEVER set all three flags. - */ +// Private rooms are always flagged with QR_PRIVATE. If neither QR_PASSWORDED +// or QR_GUESSNAME is set, then it is invitation-only. Passworded rooms are +// flagged with both QR_PRIVATE and QR_PASSWORDED while guess-name rooms are +// flagged with both QR_PRIVATE and QR_GUESSNAME. NEVER set all three flags. -/* - * Miscellaneous - */ +// Miscellaneous #define MES_NORMAL 65 // Normal message #define MES_ANONONLY 66 // "****" header #define MES_ANONOPT 67 // "Anonymous" header -/****************************************************************************/ - -/* - * Floor record. The floor number is implicit in its location in the file. - */ +// Floor record. The floor number is implicit in its location in the file. typedef struct floor floor; struct floor { unsigned short f_flags; // flags @@ -151,14 +128,11 @@ struct floor { #define F_INUSE 1 // floor is in use - -/* - * Values used internally for function call returns, etc. - */ +// Values used internally for function call returns, etc. #define NEWREGISTER 0 // new user to register #define REREGISTER 1 // existing user reregistering -/* number of items which may be handled by the CONF command */ +// number of items which may be handled by the CONF command #define NUM_CONFIGS 71 #define TRACE syslog(LOG_DEBUG, "\033[7m Checkpoint: %s : %d \033[0m", __FILE__, __LINE__) @@ -167,21 +141,14 @@ struct floor { #define LONG_MAX 2147483647L #endif -/* - * Authentication modes - */ +// Authentication modes #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 using LDAP server with RFC 2307 schema +#define AUTHMODE_LDAP 2 // Authenticate using LDAP server with POSIX 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 */ +#endif // CITADEL_H