From: Art Cancro Date: Sun, 12 Feb 2023 00:05:59 +0000 (-0500) Subject: citadel.h is now citadel_defs.h X-Git-Tag: v973~14 X-Git-Url: https://code.citadel.org/?p=citadel.git;a=commitdiff_plain;h=5e62c1bbe9d3014d5779a93ffd2537158e7c0197 citadel.h is now citadel_defs.h --- diff --git a/citadel/Makefile b/citadel/Makefile index bda087100..c89f92cc0 100644 --- a/citadel/Makefile +++ b/citadel/Makefile @@ -1,5 +1,5 @@ # Makefile for Citadel Server -# Copyright (c) 1987-2022 by Art Cancro and the citadel.org team +# Copyright (c) 1987-2023 by Art Cancro and the citadel.org team # # No, we are NOT using the obsolete GNU Autotools. This configure script works # well on the Linux operating system (which uses the Linux kernel) and on BSD. @@ -18,7 +18,6 @@ citserver: server/*.c server/modules/*/*.c config.mk server/*.h cc ${CFLAGS} \ server/*.c server/modules/*/*.c \ ${LDFLAGS} -lresolv -lcitadel -lpthread -lz -lical -lldap -lcrypt -lexpat -lcurl -ldb \ - -Wno-deprecated-declarations \ -o citserver setup: utils/setup.c server/citadel_dirs.c utils/*.h server/*.h diff --git a/citadel/server/citadel.h b/citadel/server/citadel.h deleted file mode 100644 index 84e5b837e..000000000 --- a/citadel/server/citadel.h +++ /dev/null @@ -1,98 +0,0 @@ -// Main Citadel header file -// -// Copyright (c) 1987-2022 by the citadel.org team -// -// 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 - -// 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 -#include "sysconfig.h" -#include "typesize.h" -#include "ipcdef.h" - -#ifdef __cplusplus -extern "C" { -#endif - - -#define REV_LEVEL 972 // This version -#define REV_MIN 591 // Oldest compatible database -#define EXPORT_REV_MIN 931 // Oldest compatible export files -#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 - -// hats off to https://stackoverflow.com/questions/5459868/concatenate-int-to-string-using-c-preprocessor -#define STR_HELPER(x) #x -#define STR(x) STR_HELPER(x) -#define CITADEL "Citadel Server " STR(REV_LEVEL) - -#ifdef LIBCITADEL_VERSION_NUMBER -#if LIBCITADEL_VERSION_NUMBER < LIBCITADEL_MIN -#error libcitadel is too old. Please upgrade it before continuing. -#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 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 -typedef struct ExpirePolicy ExpirePolicy; -struct ExpirePolicy { - int expire_mode; - int expire_value; -}; - -#define EXPIRE_NEXTLEVEL 0 // Inherit expiration policy -#define EXPIRE_MANUAL 1 // Don't expire messages at all -#define EXPIRE_NUMMSGS 2 // Keep only latest n messages -#define EXPIRE_AGE 3 // Expire messages after n days - -// Bits which may appear in MMflags. -#define MM_VALID 4 // New users need validating - -// Miscellaneous -#define MES_NORMAL 65 // Normal message -#define MES_ANONONLY 66 // "****" header -#define MES_ANONOPT 67 // "Anonymous" header - -// 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 -#define NUM_CONFIGS 71 - -#define TRACE syslog(LOG_DEBUG, "\033[7m Checkpoint: %s : %d \033[0m", __FILE__, __LINE__) - -#ifndef LONG_MAX -#define LONG_MAX 2147483647L -#endif - -// 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 POSIX schema -#define AUTHMODE_LDAP_AD 3 // Authenticate using LDAP server with Active Directory schema - -#ifdef __cplusplus -} -#endif - -#endif // CITADEL_H diff --git a/citadel/server/citadel_defs.h b/citadel/server/citadel_defs.h new file mode 100644 index 000000000..f19067f82 --- /dev/null +++ b/citadel/server/citadel_defs.h @@ -0,0 +1,79 @@ +// Definitions for the Citadel Server +// +// Copyright (c) 1987-2023 by the citadel.org team +// +// 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 + +// Suppress these compiler warnings +#pragma GCC diagnostic ignored "-Wcast-qual" +#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers" +#pragma GCC diagnostic ignored "-Wformat-truncation" +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + +#include "sysdep.h" +#include +#include "sysconfig.h" +#include "typesize.h" +#include "ipcdef.h" + + +#define REV_LEVEL 972 // This version +#define REV_MIN 591 // Oldest compatible database +#define EXPORT_REV_MIN 931 // Oldest compatible export files +#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 + +// hats off to https://stackoverflow.com/questions/5459868/concatenate-int-to-string-using-c-preprocessor +#define STR_HELPER(x) #x +#define STR(x) STR_HELPER(x) +#define CITADEL "Citadel Server " STR(REV_LEVEL) + +#ifdef LIBCITADEL_VERSION_NUMBER +#if LIBCITADEL_VERSION_NUMBER < LIBCITADEL_MIN +#error libcitadel is too old. Please upgrade it before continuing. +#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 USERNAME_SIZE 64 // The size of a username string +#define MAX_EDITORS 5 // number of external editors supported ; must be at least 1 + +// Bits which may appear in MMflags. +#define MM_VALID 4 // New users need validating + +// Miscellaneous +#define MES_NORMAL 65 // Normal message +#define MES_ANONONLY 66 // "****" header +#define MES_ANONOPT 67 // "Anonymous" header + +// 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 +#define NUM_CONFIGS 71 + +#define TRACE syslog(LOG_DEBUG, "\033[7m Checkpoint: %s : %d \033[0m", __FILE__, __LINE__) + +#ifndef LONG_MAX +#define LONG_MAX 2147483647L +#endif + +// 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 POSIX schema +#define AUTHMODE_LDAP_AD 3 // Authenticate using LDAP server with Active Directory schema + +#endif // CITADEL_H diff --git a/citadel/server/citadel_dirs.c b/citadel/server/citadel_dirs.c index bad200ef3..6fce40cb1 100644 --- a/citadel/server/citadel_dirs.c +++ b/citadel/server/citadel_dirs.c @@ -15,7 +15,7 @@ #include #include #include -#include "citadel.h" +#include "citadel_defs.h" #include "server.h" #include "citadel_dirs.h" diff --git a/citadel/server/default_timezone.c b/citadel/server/default_timezone.c index b7090d966..0e1547e11 100644 --- a/citadel/server/default_timezone.c +++ b/citadel/server/default_timezone.c @@ -15,7 +15,7 @@ #include #include #include -#include "citadel.h" +#include "citadel_defs.h" #include "server.h" #include "citserver.h" #include "sysdep_decls.h" diff --git a/citadel/server/domain.c b/citadel/server/domain.c index 460c3937b..8fbc9b08e 100644 --- a/citadel/server/domain.c +++ b/citadel/server/domain.c @@ -20,7 +20,7 @@ #endif #include #include "sysdep_decls.h" -#include "citadel.h" +#include "citadel_defs.h" #include "domain.h" #include "internet_addressing.h" diff --git a/citadel/server/internet_addressing.c b/citadel/server/internet_addressing.c index 59a1b91b2..9cfbe3b8a 100644 --- a/citadel/server/internet_addressing.c +++ b/citadel/server/internet_addressing.c @@ -21,7 +21,7 @@ #include #include #include -#include "citadel.h" +#include "citadel_defs.h" #include "server.h" #include "sysdep_decls.h" #include "citserver.h" diff --git a/citadel/server/modules/blog/serv_blog.c b/citadel/server/modules/blog/serv_blog.c index 4751e35c0..da9c199c0 100644 --- a/citadel/server/modules/blog/serv_blog.c +++ b/citadel/server/modules/blog/serv_blog.c @@ -31,7 +31,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/checkpoint/serv_checkpoint.c b/citadel/server/modules/checkpoint/serv_checkpoint.c index 96cc8e132..ff3154a57 100644 --- a/citadel/server/modules/checkpoint/serv_checkpoint.c +++ b/citadel/server/modules/checkpoint/serv_checkpoint.c @@ -22,7 +22,7 @@ #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../msgbase.h" diff --git a/citadel/server/modules/clamav/serv_virus.c b/citadel/server/modules/clamav/serv_virus.c index 0ec85682b..5149988d3 100644 --- a/citadel/server/modules/clamav/serv_virus.c +++ b/citadel/server/modules/clamav/serv_virus.c @@ -32,7 +32,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/crypto/serv_crypto.c b/citadel/server/modules/crypto/serv_crypto.c index 3b6a88995..529579aa0 100644 --- a/citadel/server/modules/crypto/serv_crypto.c +++ b/citadel/server/modules/crypto/serv_crypto.c @@ -35,7 +35,7 @@ #include "../../server.h" #include "serv_crypto.h" #include "../../sysdep_decls.h" -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../config.h" #include "../../ctdl_module.h" diff --git a/citadel/server/modules/expire/expire_policy.c b/citadel/server/modules/expire/expire_policy.c index 6aaeeff93..32db98ad2 100644 --- a/citadel/server/modules/expire/expire_policy.c +++ b/citadel/server/modules/expire/expire_policy.c @@ -21,7 +21,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../database.h" #include "../../config.h" diff --git a/citadel/server/modules/expire/serv_expire.c b/citadel/server/modules/expire/serv_expire.c index e25a18448..58988c197 100644 --- a/citadel/server/modules/expire/serv_expire.c +++ b/citadel/server/modules/expire/serv_expire.c @@ -29,7 +29,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/fulltext/ft_wordbreaker.c b/citadel/server/modules/fulltext/ft_wordbreaker.c index d5a07d43c..81e605626 100644 --- a/citadel/server/modules/fulltext/ft_wordbreaker.c +++ b/citadel/server/modules/fulltext/ft_wordbreaker.c @@ -27,7 +27,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/fulltext/serv_fulltext.c b/citadel/server/modules/fulltext/serv_fulltext.c index f5a63029c..3ad99085f 100644 --- a/citadel/server/modules/fulltext/serv_fulltext.c +++ b/citadel/server/modules/fulltext/serv_fulltext.c @@ -31,7 +31,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/imap/imap_acl.c b/citadel/server/modules/imap/imap_acl.c index 6c98f2eda..bba4bd7a4 100644 --- a/citadel/server/modules/imap/imap_acl.c +++ b/citadel/server/modules/imap/imap_acl.c @@ -33,7 +33,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/imap/imap_fetch.c b/citadel/server/modules/imap/imap_fetch.c index 2ac8745c8..043487919 100644 --- a/citadel/server/modules/imap/imap_fetch.c +++ b/citadel/server/modules/imap/imap_fetch.c @@ -31,7 +31,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/imap/imap_list.c b/citadel/server/modules/imap/imap_list.c index a256a5cbc..7565d8e94 100644 --- a/citadel/server/modules/imap/imap_list.c +++ b/citadel/server/modules/imap/imap_list.c @@ -33,7 +33,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/imap/imap_metadata.c b/citadel/server/modules/imap/imap_metadata.c index 425000ad0..3cfbbc81e 100644 --- a/citadel/server/modules/imap/imap_metadata.c +++ b/citadel/server/modules/imap/imap_metadata.c @@ -36,7 +36,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/imap/imap_misc.c b/citadel/server/modules/imap/imap_misc.c index 50bd71424..8d785cb61 100644 --- a/citadel/server/modules/imap/imap_misc.c +++ b/citadel/server/modules/imap/imap_misc.c @@ -28,7 +28,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/imap/imap_search.c b/citadel/server/modules/imap/imap_search.c index b77169f42..72b57ba10 100644 --- a/citadel/server/modules/imap/imap_search.c +++ b/citadel/server/modules/imap/imap_search.c @@ -30,7 +30,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/imap/imap_store.c b/citadel/server/modules/imap/imap_store.c index 4b67bfc4e..103e95138 100644 --- a/citadel/server/modules/imap/imap_store.c +++ b/citadel/server/modules/imap/imap_store.c @@ -21,7 +21,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../sysdep_decls.h" #include "../../citserver.h" diff --git a/citadel/server/modules/imap/imap_tools.c b/citadel/server/modules/imap/imap_tools.c index 96cdfc518..8d910305d 100644 --- a/citadel/server/modules/imap/imap_tools.c +++ b/citadel/server/modules/imap/imap_tools.c @@ -27,7 +27,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../sysdep_decls.h" #include "../../internet_addressing.h" #include "serv_imap.h" diff --git a/citadel/server/modules/imap/serv_imap.c b/citadel/server/modules/imap/serv_imap.c index 6334388d3..e492bc74f 100644 --- a/citadel/server/modules/imap/serv_imap.c +++ b/citadel/server/modules/imap/serv_imap.c @@ -20,7 +20,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/inboxrules/serv_inboxrules.c b/citadel/server/modules/inboxrules/serv_inboxrules.c index 1e1f8899a..72eabb635 100644 --- a/citadel/server/modules/inboxrules/serv_inboxrules.c +++ b/citadel/server/modules/inboxrules/serv_inboxrules.c @@ -24,7 +24,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/inetcfg/serv_inetcfg.c b/citadel/server/modules/inetcfg/serv_inetcfg.c index de095a2f8..529670304 100644 --- a/citadel/server/modules/inetcfg/serv_inetcfg.c +++ b/citadel/server/modules/inetcfg/serv_inetcfg.c @@ -29,7 +29,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/instmsg/serv_instmsg.c b/citadel/server/modules/instmsg/serv_instmsg.c index 6726e2355..9ac1a5e64 100644 --- a/citadel/server/modules/instmsg/serv_instmsg.c +++ b/citadel/server/modules/instmsg/serv_instmsg.c @@ -26,7 +26,7 @@ #include #include #include "../../sysdep.h" -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../context.h" #include "../../citserver.h" diff --git a/citadel/server/modules/listdeliver/serv_listdeliver.c b/citadel/server/modules/listdeliver/serv_listdeliver.c index 61df918cf..dc8f43396 100644 --- a/citadel/server/modules/listdeliver/serv_listdeliver.c +++ b/citadel/server/modules/listdeliver/serv_listdeliver.c @@ -26,7 +26,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/listsub/serv_listsub.c b/citadel/server/modules/listsub/serv_listsub.c index 70f6174e3..72d407fef 100644 --- a/citadel/server/modules/listsub/serv_listsub.c +++ b/citadel/server/modules/listsub/serv_listsub.c @@ -29,7 +29,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/migrate/serv_migrate.c b/citadel/server/modules/migrate/serv_migrate.c index 08568763f..ffd615a48 100644 --- a/citadel/server/modules/migrate/serv_migrate.c +++ b/citadel/server/modules/migrate/serv_migrate.c @@ -40,7 +40,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/newuser/serv_newuser.c b/citadel/server/modules/newuser/serv_newuser.c index 37563c08a..a75686c2c 100644 --- a/citadel/server/modules/newuser/serv_newuser.c +++ b/citadel/server/modules/newuser/serv_newuser.c @@ -32,7 +32,7 @@ #include #include #include "../../ctdl_module.h" -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/nntp/serv_nntp.c b/citadel/server/modules/nntp/serv_nntp.c index e2c7bd75d..ef305d50f 100644 --- a/citadel/server/modules/nntp/serv_nntp.c +++ b/citadel/server/modules/nntp/serv_nntp.c @@ -32,7 +32,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/notes/serv_notes.c b/citadel/server/modules/notes/serv_notes.c index 1351db3da..f59bd8fe8 100644 --- a/citadel/server/modules/notes/serv_notes.c +++ b/citadel/server/modules/notes/serv_notes.c @@ -26,7 +26,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/pop3/serv_pop3.c b/citadel/server/modules/pop3/serv_pop3.c index 335968708..067c30435 100644 --- a/citadel/server/modules/pop3/serv_pop3.c +++ b/citadel/server/modules/pop3/serv_pop3.c @@ -34,7 +34,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/pop3client/serv_pop3client.c b/citadel/server/modules/pop3client/serv_pop3client.c index 84c43f173..78a498f43 100644 --- a/citadel/server/modules/pop3client/serv_pop3client.c +++ b/citadel/server/modules/pop3client/serv_pop3client.c @@ -17,7 +17,7 @@ #include #include #include "../../sysconfig.h" -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/roomchat/serv_roomchat.c b/citadel/server/modules/roomchat/serv_roomchat.c index 4adb1a492..91e21fca1 100644 --- a/citadel/server/modules/roomchat/serv_roomchat.c +++ b/citadel/server/modules/roomchat/serv_roomchat.c @@ -26,7 +26,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/rssclient/serv_rssclient.c b/citadel/server/modules/rssclient/serv_rssclient.c index 28afc5b1c..07ea2e818 100644 --- a/citadel/server/modules/rssclient/serv_rssclient.c +++ b/citadel/server/modules/rssclient/serv_rssclient.c @@ -19,7 +19,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/rwho/serv_rwho.c b/citadel/server/modules/rwho/serv_rwho.c index d0f38ff17..64a0e42fe 100644 --- a/citadel/server/modules/rwho/serv_rwho.c +++ b/citadel/server/modules/rwho/serv_rwho.c @@ -20,7 +20,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/smtp/serv_smtp.c b/citadel/server/modules/smtp/serv_smtp.c index c30df5409..0c09e005f 100644 --- a/citadel/server/modules/smtp/serv_smtp.c +++ b/citadel/server/modules/smtp/serv_smtp.c @@ -50,7 +50,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/smtp/serv_smtpclient.c b/citadel/server/modules/smtp/serv_smtpclient.c index 85ca6570c..12c11098a 100644 --- a/citadel/server/modules/smtp/serv_smtpclient.c +++ b/citadel/server/modules/smtp/serv_smtpclient.c @@ -19,7 +19,7 @@ #include #include #include "../../sysconfig.h" -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/smtp/smtp_util.c b/citadel/server/modules/smtp/smtp_util.c index d62df945d..27d239b64 100644 --- a/citadel/server/modules/smtp/smtp_util.c +++ b/citadel/server/modules/smtp/smtp_util.c @@ -32,7 +32,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/spam/serv_spam.c b/citadel/server/modules/spam/serv_spam.c index 76a422d85..cc6272f31 100644 --- a/citadel/server/modules/spam/serv_spam.c +++ b/citadel/server/modules/spam/serv_spam.c @@ -22,7 +22,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/upgrade/serv_upgrade.c b/citadel/server/modules/upgrade/serv_upgrade.c index c3fc9618f..b84a4cbf3 100644 --- a/citadel/server/modules/upgrade/serv_upgrade.c +++ b/citadel/server/modules/upgrade/serv_upgrade.c @@ -27,7 +27,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/vcard/serv_vcard.c b/citadel/server/modules/vcard/serv_vcard.c index 7dbeb4a91..3ae799732 100644 --- a/citadel/server/modules/vcard/serv_vcard.c +++ b/citadel/server/modules/vcard/serv_vcard.c @@ -43,7 +43,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/wiki/serv_wiki.c b/citadel/server/modules/wiki/serv_wiki.c index d547d2157..6ab11651b 100644 --- a/citadel/server/modules/wiki/serv_wiki.c +++ b/citadel/server/modules/wiki/serv_wiki.c @@ -27,7 +27,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/xmpp/serv_xmpp.c b/citadel/server/modules/xmpp/serv_xmpp.c index 13e8c1764..9dacbffad 100644 --- a/citadel/server/modules/xmpp/serv_xmpp.c +++ b/citadel/server/modules/xmpp/serv_xmpp.c @@ -33,7 +33,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/xmpp/xmpp_messages.c b/citadel/server/modules/xmpp/xmpp_messages.c index 219f8efdd..211280ce3 100644 --- a/citadel/server/modules/xmpp/xmpp_messages.c +++ b/citadel/server/modules/xmpp/xmpp_messages.c @@ -28,7 +28,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/xmpp/xmpp_presence.c b/citadel/server/modules/xmpp/xmpp_presence.c index 0dc24322f..0658a141c 100644 --- a/citadel/server/modules/xmpp/xmpp_presence.c +++ b/citadel/server/modules/xmpp/xmpp_presence.c @@ -36,7 +36,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/xmpp/xmpp_query_namespace.c b/citadel/server/modules/xmpp/xmpp_query_namespace.c index 01b976869..abff8cec0 100644 --- a/citadel/server/modules/xmpp/xmpp_query_namespace.c +++ b/citadel/server/modules/xmpp/xmpp_query_namespace.c @@ -28,7 +28,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/xmpp/xmpp_queue.c b/citadel/server/modules/xmpp/xmpp_queue.c index 175c7d9bc..b3c48616d 100644 --- a/citadel/server/modules/xmpp/xmpp_queue.c +++ b/citadel/server/modules/xmpp/xmpp_queue.c @@ -28,7 +28,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/modules/xmpp/xmpp_sasl_service.c b/citadel/server/modules/xmpp/xmpp_sasl_service.c index 494c0da1c..28f3c6a35 100644 --- a/citadel/server/modules/xmpp/xmpp_sasl_service.c +++ b/citadel/server/modules/xmpp/xmpp_sasl_service.c @@ -30,7 +30,7 @@ #include #include #include -#include "../../citadel.h" +#include "../../citadel_defs.h" #include "../../server.h" #include "../../citserver.h" #include "../../support.h" diff --git a/citadel/server/server.h b/citadel/server/server.h index 12616070d..09054b182 100644 --- a/citadel/server/server.h +++ b/citadel/server/server.h @@ -1,4 +1,4 @@ -// Main declarations file for the Citadel server +// Data types for the Citadel Server // // Copyright (c) 1987-2023 by the citadel.org team // @@ -14,7 +14,7 @@ #define INLINE #endif -#include "citadel.h" +#include "citadel_defs.h" #ifdef HAVE_OPENSSL #define OPENSSL_NO_KRB5 // work around redhat b0rken ssl headers #include @@ -319,6 +319,18 @@ struct ctdluser { // User record }; +// Message expiration policy stuff +typedef struct ExpirePolicy ExpirePolicy; +struct ExpirePolicy { + int expire_mode; + int expire_value; +}; + +#define EXPIRE_NEXTLEVEL 0 // Inherit expiration policy +#define EXPIRE_MANUAL 1 // Don't expire messages at all +#define EXPIRE_NUMMSGS 2 // Keep only latest n messages +#define EXPIRE_AGE 3 // Expire messages after n days + // Room records. struct ctdlroom { char QRname[ROOMNAMELEN]; // Name of room diff --git a/citadel/server/support.c b/citadel/server/support.c index 7410e7cc2..6f9a0836d 100644 --- a/citadel/server/support.c +++ b/citadel/server/support.c @@ -9,7 +9,7 @@ #include #include -#include "citadel.h" +#include "citadel_defs.h" #include "support.h" // strproc() - make a string 'nice' diff --git a/citadel/utils/chkpw.c b/citadel/utils/chkpw.c index 8c9dcb395..2db604e17 100644 --- a/citadel/utils/chkpw.c +++ b/citadel/utils/chkpw.c @@ -18,7 +18,7 @@ #include #include #include -#include "../server/citadel.h" +#include "../server/citadel_defs.h" #include "../server/server.h" #include "../server/sysdep.h" #include "../server/citadel_dirs.h" diff --git a/citadel/utils/chkpwd.c b/citadel/utils/chkpwd.c index 70baf53e7..d94bb8861 100644 --- a/citadel/utils/chkpwd.c +++ b/citadel/utils/chkpwd.c @@ -17,7 +17,7 @@ #include "auth.h" #include "../server/config.h" #include "../server/citadel_dirs.h" -#include "../server/citadel.h" +#include "../server/citadel_defs.h" int main(void) { diff --git a/citadel/utils/citmail.c b/citadel/utils/citmail.c index cff216f3e..7d89d4ea6 100644 --- a/citadel/utils/citmail.c +++ b/citadel/utils/citmail.c @@ -24,7 +24,7 @@ #include #include #include "../server/sysdep.h" -#include "../server/citadel.h" +#include "../server/citadel_defs.h" #include "../server/server.h" #include "../server/citadel_dirs.h" diff --git a/citadel/utils/ctdlmigrate.c b/citadel/utils/ctdlmigrate.c index 19539ba37..6b1af0297 100644 --- a/citadel/utils/ctdlmigrate.c +++ b/citadel/utils/ctdlmigrate.c @@ -25,7 +25,7 @@ #include #include #include -#include "../server/citadel.h" +#include "../server/citadel_defs.h" #include "axdefs.h" #include "../server/sysdep.h" #include "../server/config.h" diff --git a/citadel/utils/sendcommand.c b/citadel/utils/sendcommand.c index 6380f4eec..41547be9e 100644 --- a/citadel/utils/sendcommand.c +++ b/citadel/utils/sendcommand.c @@ -19,7 +19,7 @@ #include #include #include -#include "../server/citadel.h" +#include "../server/citadel_defs.h" #include "../server/server.h" #include "../server/citadel_dirs.h" #include diff --git a/citadel/utils/setup.c b/citadel/utils/setup.c index 2acbc6ab5..84d1d958c 100644 --- a/citadel/utils/setup.c +++ b/citadel/utils/setup.c @@ -25,7 +25,7 @@ #include #include #include -#include "../server/citadel.h" +#include "../server/citadel_defs.h" #include "../server/server.h" #include "axdefs.h" #include "../server/sysdep.h"