The battle against bit rot continues!
authorArt Cancro <ajc@citadel.org>
Tue, 19 Feb 2019 20:55:21 +0000 (15:55 -0500)
committerArt Cancro <ajc@citadel.org>
Tue, 19 Feb 2019 20:55:21 +0000 (15:55 -0500)
* Removed support for Berkeley DB versions older than 5.0
* Removed the "public_clients" configuration file and code which uses it
* Removed all remaining code that references "mail.aliases"

16 files changed:
citadel/Makefile.in
citadel/buildpackages
citadel/citserver.c
citadel/citserver.h
citadel/configure.ac
citadel/context.h
citadel/database.c
citadel/debian/citadel-server.install
citadel/debian/control
citadel/include/citadel_dirs.h
citadel/internet_addressing.c
citadel/modules/ctdlproto/serv_session.c
citadel/public_clients [deleted file]
citadel/server.h
citadel/sysdep_decls.h
citadel/threads.h

index 16ca85fd348707aef67526f468e0e792af0d3962..486ae7354dcfd9e5ec1d00e3138a4b93d4fa204f 100644 (file)
@@ -1,12 +1,12 @@
-# Makefile for Citadel
+########################################################################
+#
+# Makefile for Citadel Server
 #
 # NOTE: normally you should not have to modify the Makefile.  All
 # system-dependent configuration is in the "configure" script, which
 # uses "Makefile.in" to generate a "Makefile".  In the rare instance
-# that you have to modify something here, please take note:
-# 1. Edit Makefile.in, -not- Makefile.
-# 2. Send e-mail to ajc@uncensored.citadel.org and let me know what you
-#    did, so any necessary changes can be put into the next release.
+# that you have to modify something here, please edit Makefile.in,
+# *not* Makefile.
 #
 ########################################################################
 
@@ -68,10 +68,8 @@ LOCALEDIR=@LOCALEDIR@
 .SILENT:
 
 
-SOURCES=utils/citmail.c \
-       utils/setup.c utils/chkpw.c \
-       utils/sendcommand.c \
-       utils/ctdlmigrate.c utils/chkpwd.c \
+SOURCES=utils/citmail.c utils/setup.c utils/chkpw.c \
+       utils/sendcommand.c  utils/ctdlmigrate.c utils/chkpwd.c \
        utillib/citadel_dirs.c \
        citserver.c clientsocket.c config.c control.c $(DATABASE) \
        domain.c serv_extensions.c genstamp.c \
@@ -81,7 +79,6 @@ SOURCES=utils/citmail.c \
        support.c sysdep.c user_ops.c journaling.c threads.c \
        context.c netconfig.c md5.c
 
-
 include Make_sources
 
 # for VPATH builds (invoked by configure)
@@ -114,9 +111,6 @@ utils: $(UTIL_TARGETS) $(UTILBIN_TARGETS)
        $(YACC) $(YFLAGS) $<
        mv -f y.tab.c $@
 
-#
-#
-
 parsedate.o: parsedate.c
 
 Make_sources: modules_init.c
@@ -200,11 +194,6 @@ upgrade: install-exec install-doc
 
 install-data:
        $(srcdir)/mkinstalldirs $(DESTDIR)$(prefix)/messages
-       @for i in public_clients \
-                `find $(srcdir)/messages $(srcdir)/network -type f | grep -v .svn`; do \
-               echo $(INSTALL_DATA) $$i $(DESTDIR)$(prefix)/$$i; \
-               $(INSTALL_DATA) $$i $(DESTDIR)$(prefix)/$$i; \
-       done
        -@if test -d $(DESTDIR)/etc/pam.d; then \
                echo $(INSTALL_DATA) $(srcdir)/citadel.pam $(DESTDIR)/etc/pam.d/citadel; \
                $(INSTALL_DATA) $(srcdir)/citadel.pam $(DESTDIR)/etc/pam.d/citadel; \
@@ -212,8 +201,6 @@ install-data:
 
 install-data-new:
        $(srcdir)/mkinstalldirs $(DESTDIR)$(ETC_DIR)/
-       $(INSTALL_DATA) $(srcdir)/public_clients $(DESTDIR)$(ETC_DIR)/public_clients
-       $(INSTALL_DATA) $(srcdir)/network/mail.aliases $(DESTDIR)$(ETC_DIR)/mail.aliases
 
        $(srcdir)/mkinstalldirs $(DESTDIR)$(STATICDATA_DIR)/messages
        @for i in  \
@@ -314,7 +301,6 @@ clean:
        fi
        rm -vf $(SERVER_TARGETS) $(UTIL_TARGETS) $(UTILBIN_TARGETS) $(NOINST_TARGETS)
 
-
 cleaner: clean
        rm -vrf $(SERVER_TARGETS) $(UTIL_TARGETS) $(UTILBIN_TARGETS) $(NOINST_TARGETS) database_cleanup.sh *.la
        rm -vrf modules_upgrade.c modules_init.c modules_init.h Make_modules Make_sources
index 3b9f6f881cf32477db0729aa79d7a16367231d78..412c303ca73c8e2f8c701d9cfbb62b57d06eedd9 100755 (executable)
@@ -79,7 +79,7 @@ EMAIL=citadel@outgesourced.org
        export LDFLAGS='-L/opt/csw/lib -L /usr/local/lib'
        export CFLAGS='-I/opt/csw/include -I/usr/local/include  -DDISABLE_CURSES'
        ./configure \
-           --with-db=/opt/csw/bdb44 \
+           --with-db=/opt/csw/bdb5 \
            --with-ical=/usr/local/ \
            --with-prefix=/opt/csw/ \
            --with-datadir=/opt/csw/var/lib/citadel \
index a9750dd6473e9e0b4932e2240da4dcaf3fd18a83..6e287a7067bf458ffee95f9839547bef03b47ecd 100644 (file)
@@ -1,7 +1,7 @@
 /* 
  * Main source module for the Citadel server
  *
- * Copyright (c) 1987-2017 by the citadel.org team
+ * Copyright (c) 1987-2019 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.
@@ -119,9 +119,11 @@ int master_cleanup(int exitcode)
        struct CleanupFunctionHook *fcn;
        static int already_cleaning_up = 0;
 
-       if (already_cleaning_up)
-               while (1)
+       if (already_cleaning_up) {
+               while (1) {
                        usleep(1000000);
+               }
+       }
        already_cleaning_up = 1;
 
        /* Run any cleanup routines registered by loadable modules */
@@ -129,9 +131,6 @@ int master_cleanup(int exitcode)
                (*fcn->h_function_pointer) ();
        }
 
-       /* Close the AdjRefCount queue file */
-       AdjRefCount(-1, 0);
-
        /* Do system-dependent stuff */
        sysdep_master_cleanup();
 
@@ -166,7 +165,6 @@ int master_cleanup(int exitcode)
 }
 
 
-
 /*
  * returns an asterisk if there are any instant messages waiting,
  * space otherwise.
@@ -181,106 +179,6 @@ char CtdlCheckExpress(void)
 }
 
 
-/*
- * Check originating host against the public_clients file.  This determines
- * whether the client is allowed to change the hostname for this session
- * (for example, to show the location of the user rather than the location
- * of the client).
- */
-int CtdlIsPublicClient(void)
-{
-       char buf[1024];
-       char addrbuf[1024];
-       FILE *fp;
-       int i;
-       char *public_clientspos;
-       char *public_clientsend;
-       char *paddr = NULL;
-       struct stat statbuf;
-       static time_t pc_timestamp = 0;
-       static char public_clients[SIZ];
-       static char public_clients_file[SIZ];
-
-#define LOCALHOSTSTR "127.0.0.1"
-
-       snprintf(public_clients_file, sizeof public_clients_file, "%s/public_clients", ctdl_etc_dir);
-
-       /*
-        * Check the time stamp on the public_clients file.  If it's been
-        * updated since the last time we were here (or if this is the first
-        * time we've been through the loop), read its contents and learn
-        * the IP addresses of the listed hosts.
-        */
-       if (stat(public_clients_file, &statbuf) != 0) {
-               /* No public_clients file exists, so bail out */
-               syslog(LOG_WARNING, "Warning: '%s' does not exist", public_clients_file);
-               return (0);
-       }
-
-       if (statbuf.st_mtime > pc_timestamp) {
-               begin_critical_section(S_PUBLIC_CLIENTS);
-               syslog(LOG_INFO, "Loading %s", public_clients_file);
-
-               public_clientspos = &public_clients[0];
-               public_clientsend = public_clientspos + SIZ;
-               safestrncpy(public_clientspos, LOCALHOSTSTR, sizeof public_clients);
-               public_clientspos += sizeof(LOCALHOSTSTR) - 1;
-
-               if (hostname_to_dotted_quad(addrbuf, CtdlGetConfigStr("c_fqdn")) == 0) {
-                       *(public_clientspos++) = '|';
-                       paddr = &addrbuf[0];
-                       while (!IsEmptyStr(paddr) && (public_clientspos < public_clientsend))
-                               *(public_clientspos++) = *(paddr++);
-               }
-
-               fp = fopen(public_clients_file, "r");
-               if (fp != NULL)
-                       while ((fgets(buf, sizeof buf, fp) != NULL) && (public_clientspos < public_clientsend)) {
-                               char *ptr;
-                               ptr = buf;
-                               while (!IsEmptyStr(ptr)) {
-                                       if (*ptr == '#') {
-                                               *ptr = 0;
-                                               break;
-                                       } else
-                                               ptr++;
-                               }
-                               ptr--;
-                               while (ptr > buf && isspace(*ptr)) {
-                                       *(ptr--) = 0;
-                               }
-                               if (hostname_to_dotted_quad(addrbuf, buf) == 0) {
-                                       *(public_clientspos++) = '|';
-                                       paddr = addrbuf;
-                                       while (!IsEmptyStr(paddr) && (public_clientspos < public_clientsend)) {
-                                               *(public_clientspos++) = *(paddr++);
-                                       }
-                               }
-                       }
-               if (fp != NULL)
-                       fclose(fp);
-               pc_timestamp = time(NULL);
-               end_critical_section(S_PUBLIC_CLIENTS);
-       }
-
-       syslog(LOG_DEBUG, "Checking whether %s is a local or public client", CC->cs_addr);
-       for (i = 0; i < num_parms(public_clients); ++i) {
-               extract_token(addrbuf, public_clients, i, '|', sizeof addrbuf);
-               if (!strcasecmp(CC->cs_addr, addrbuf)) {
-                       syslog(LOG_DEBUG, "... yes its local.");
-                       return (1);
-               }
-       }
-
-       /* No hits.  This is not a public client. */
-       syslog(LOG_DEBUG, "... no it isn't.");
-       return (0);
-}
-
-
-
-
-
 void citproto_begin_session()
 {
        if (CC->nologin == 1) {
index 5e7dfa31c67a524dabea30fc58fc1896e9023c1a..e292ab7a8f1cfb5fa9c37ed87c528f86eb0d9981 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1987-2018 by the citadel.org team
+ * Copyright (c) 1987-2019 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.
@@ -49,6 +49,5 @@ void help_subst (char *strbuf, char *source, char *dest);
 
 extern int panic_fd;
 char CtdlCheckExpress(void);
-int CtdlIsPublicClient(void);
 extern time_t server_startup_time;
 extern int openid_level_supported;
index 25e6e74003f24ac9095e28d6f25427911720e44f..a513f58951324252761b7cd5f2ee554175ae01cf 100644 (file)
@@ -259,14 +259,7 @@ if test "x$with_db" != xno -a "x$with_db" != xyes -a "$with_db"; then
        with_db=yes
 else
        test -f /usr/local/lib/libdb.a -o -f /usr/local/lib/libdb.so \
-         -o -f /usr/local/lib/libdb4.a -o -f /usr/local/lib/libdb4.so \
          && db_dir=/usr/local
-
-       test -d /usr/local/BerkeleyDB.4.1 && db_dir=/usr/local/BerkeleyDB.4.1
-       test -d /usr/local/BerkeleyDB.4.2 && db_dir=/usr/local/BerkeleyDB.4.2
-       test -d /usr/local/BerkeleyDB.4.3 && db_dir=/usr/local/BerkeleyDB.4.3
-       test -d /usr/local/BerkeleyDB.4.4 && db_dir=/usr/local/BerkeleyDB.4.4
-       test -d /usr/local/BerkeleyDB.4.5 && db_dir=/usr/local/BerkeleyDB.4.5
 fi
 
 AC_CANONICAL_HOST
@@ -669,18 +662,12 @@ if test "x$with_db" != xno; then
 
        dblib=""
 
-       if test -d "$db_dir/include/db4"; then
-               CPPFLAGS="$CPPFLAGS -I$db_dir/include/db4"
-               dblib="db4"
-       elif test "$db_dir"; then
+       if test "$db_dir"; then
                CPPFLAGS="$CPPFLAGS -I$db_dir/include"
-       elif test -d /usr/include/db4; then
-               CPPFLAGS="$CPPFLAGS -I/usr/include/db4"
-               dblib="db4"
        fi
 
 
-       AC_CHECK_DB([db db-4.1 db-4 db4],
+       AC_CHECK_DB([db],
                    [
                     DATABASE=database.c
                    ],
@@ -751,7 +738,7 @@ dnl
 dnl TODO: for the DB header checks, we should check whether the headers
 dnl define db_env_create, somehow
 dnl
-AC_CHECK_HEADERS(dl.h fcntl.h limits.h malloc.h termios.h sys/ioctl.h sys/select.h sys/stat.h sys/time.h sys/prctl.h syslog.h unistd.h utmp.h utmpx.h paths.h db.h db4/db.h pthread.h netinet/in.h arpa/nameser.h arpa/nameser_compat.h syscall.h sys/syscall.h)
+AC_CHECK_HEADERS(dl.h fcntl.h limits.h malloc.h termios.h sys/ioctl.h sys/select.h sys/stat.h sys/time.h sys/prctl.h syslog.h unistd.h utmp.h utmpx.h paths.h db.h pthread.h netinet/in.h arpa/nameser.h arpa/nameser_compat.h syscall.h sys/syscall.h)
 
 AC_CHECK_HEADER(resolv.h,AC_DEFINE(HAVE_RESOLV_H, [], [define this if you have the resolv.h header file.]),,
 [#ifdef HAVE_SYS_TYPES_H
index 585b5b1c7c8a7fe4c5f7a9ce3de7679fd9550645..37ce184061791cad5179b058cda0e97209dab51e 100644 (file)
@@ -28,23 +28,14 @@ typedef enum __CCState {
        CON_SYS                 /* This is a system context and mustn't be purged */
 } CCState;
 
-//#ifndef __ASYNCIO__
-//#define __ASYNCIO__
-//typedef struct AsyncIO AsyncIO; /* forward declaration for event_client.h */
-//#endif
-
-
 #ifndef __CIT_CONTEXT__
 #define __CIT_CONTEXT__
 typedef struct CitContext CitContext;
 #endif
 
 /*
- * Here's the big one... the Citadel context structure.
- *
  * This structure keeps track of all information relating to a running 
  * session on the server.  We keep one of these for each session.
- *
  */
 struct CitContext {
        CitContext *prev;       /* Link to previous session in list */
@@ -58,12 +49,12 @@ struct CitContext {
        CCState state;          /* thread state (see CON_ values below) */
        int kill_me;            /* Set to nonzero to flag for termination */
 
-       IOBuffer SendBuf, /* Our write Buffer */
-               RecvBuf, /* Our block buffered read buffer */
-               SBuf; /* Our block buffered read buffer for clients */
+       IOBuffer SendBuf,       /* Our write Buffer */
+               RecvBuf,        /* Our block buffered read buffer */
+               SBuf;           /* Our block buffered read buffer for clients */
 
-       StrBuf *MigrateBuf;        /* Our block buffered read buffer */
-       StrBuf *sMigrateBuf;        /* Our block buffered read buffer */
+       StrBuf *MigrateBuf;     /* Our block buffered read buffer */
+       StrBuf *sMigrateBuf;    /* Our block buffered read buffer */
 
        int client_socket;
        int is_local_socket;    /* set to 1 if client is on unix domain sock */
@@ -76,8 +67,8 @@ struct CitContext {
 #endif
 
        char curr_user[USERNAME_SIZE];  /* name of current user */
-       int logged_in;          /* logged in */
-       int internal_pgm;       /* authenticated as internal program */
+       int logged_in;          /* logged in? */
+       int internal_pgm;       /* authenticated as internal program? */
        int nologin;            /* not allowed to log in */
        int curr_view;          /* The view type for the current user/room */
 
@@ -148,8 +139,6 @@ struct CitContext {
        int cached_num_msgs;
 
        char vcard_updated_by_ldap;             /* !0 iff ldap changed the vcard, treat as aide update */
-
-       //AsyncIO *IO;                          /* if this session has AsyncIO going on... */
 };
 
 #define CC MyContext()
@@ -188,19 +177,7 @@ int CtdlTerminateOtherSession (int session_num);
  * Bind a thread to a context.  (It's inline merely to speed things up.)
  */
 static INLINE void become_session(CitContext *which_con) {
-/*
-       pid_t tid = syscall(SYS_gettid);
-*/
        pthread_setspecific(MyConKey, (void *)which_con );
-/*
-       syslog(LOG_DEBUG, "[%d]: Now doing %s\n", 
-                     (int) tid, 
-                     ((which_con != NULL) && (which_con->ServiceName != NULL)) ? 
-                     which_con->ServiceName:"");
-*/
 }
 
-
-
-
 #endif /* CONTEXT_H */
index 2e80b599df74cb0a2a95393b05468326eeff8f95..a07e48ae75cb287e617c1949edd130a25d603f97 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This is a data store backend for the Citadel server which uses Berkeley DB.
  *
- * Copyright (c) 1987-2018 by the citadel.org team
+ * Copyright (c) 1987-2019 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.
 
 #ifdef HAVE_DB_H
 #include <db.h>
-#elif defined(HAVE_DB4_DB_H)
-#include <db5/db.h>
-#else
-#error Neither <db.h> nor <db5/db.h> was found by configure. Install db5-devel.
+#error <db.h> was not found by configure. Install the Berkeley DB development package.
 #endif
 
 #if DB_VERSION_MAJOR < 5
index da69209d50ef4b77225423bbe8683c535be667f2..076198af987dcc5e12ed1b4e4ac9192b78ac4129 100644 (file)
@@ -1,5 +1,4 @@
 etc/citadel/mail.aliases
-etc/citadel/public_clients
 usr/share/citadel-server/help
 etc/citadel/messages
 usr/lib/citadel-server/ctdlmigrate 
index 2d14a6807edc726c7bcef84d038d4d3a3880ccf3..26babfc1335088bccff5508e54e58008db2c23e7 100644 (file)
@@ -11,7 +11,7 @@ Standards-Version: 3.8.0
 Package: citadel-server
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, adduser, citadel-common, openssl, locales, patch
-Recommends: db4.4-util | db4.3-util, shared-mime-info
+Recommends: db5-util, shared-mime-info
 Suggests: postfix | exim4 | citadel-mta | mail-transport-agent, localepurge
 Conflicts: pop3-server, imap-server
 Provides: pop3-server, imap-server
index 161ab943feb29cdcb704d2f1c6f784e88edcde4a..ee9cf444b77ca7bc6f33f460e3a7e6cc87d38f7b 100644 (file)
@@ -39,7 +39,6 @@ extern char file_lmtp_unfiltered_socket[PATH_MAX];
 extern char file_arcq[PATH_MAX];
 extern char file_citadel_socket[PATH_MAX];
 extern char file_citadel_admin_socket[PATH_MAX];
-extern char file_mail_aliases[PATH_MAX];
 extern char file_pid_file[PATH_MAX];
 extern char file_pid_paniclog[PATH_MAX];
 extern char file_crpt_file_key[PATH_MAX];
index 74f69493f895964794835dd5951bc4aa19126f61..33d70451a6f36406c36056d8b91954ce0e728f4e 100644 (file)
@@ -403,9 +403,8 @@ void remove_any_whitespace_to_the_left_or_right_of_at_symbol(char *name)
  */
 int alias(char *name)
 {                              /* process alias and routing info for mail */
-       FILE *fp;
        int a;
-       char aaa[SIZ], bbb[SIZ];
+       char aaa[SIZ];
        int at = 0;
        char node[64];
 
@@ -416,32 +415,6 @@ int alias(char *name)
        remove_any_whitespace_to_the_left_or_right_of_at_symbol(name);
        stripallbut(name, '<', '>');
 
-       fp = fopen(file_mail_aliases, "r");             // when are we going to get rid of this?
-       if (fp == NULL) {
-               fp = fopen("/dev/null", "r");
-       }
-       if (fp == NULL) {
-               return (MES_ERROR);
-       }
-       strcpy(aaa, "");
-       strcpy(bbb, "");
-       while (fgets(aaa, sizeof aaa, fp) != NULL) {
-               while (isspace(name[0]))
-                       strcpy(name, &name[1]);
-               aaa[strlen(aaa) - 1] = 0;
-               strcpy(bbb, "");
-               for (a = 0; aaa[a] != '\0'; ++a) {
-                       if (aaa[a] == ',') {
-                               strcpy(bbb, &aaa[a + 1]);
-                               aaa[a] = 0;
-                               break;
-                       }
-               }
-               if (!strcasecmp(name, aaa))
-                       strcpy(name, bbb);
-       }
-       fclose(fp);
-
        /* Hit the email address directory */
        if (CtdlDirectoryLookup(aaa, name, sizeof aaa) == 0) {
                strcpy(name, aaa);
index eacaa9da696db2ea5c5c02269992b35b99155005..fa8186635381a62e51bccfd064165f57d6c4ee66 100644 (file)
@@ -1,7 +1,7 @@
 /* 
  * Server functions which perform operations on user objects.
  *
- * Copyright (c) 1987-2017 by the citadel.org team
+ * Copyright (c) 1987-2019 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.
@@ -125,7 +125,6 @@ void cmd_more(char *argbuf) {
  */
 void cmd_iden(char *argbuf)
 {
-        CitContext *CCC = MyContext();
        int dev_code;
        int cli_code;
        int rev_level;
@@ -146,17 +145,17 @@ void cmd_iden(char *argbuf)
        from_host[sizeof from_host - 1] = 0;
        if (num_parms(argbuf)>=5) extract_token(from_host, argbuf, 4, '|', sizeof from_host);
 
-       CCC->cs_clientdev = dev_code;
-       CCC->cs_clienttyp = cli_code;
-       CCC->cs_clientver = rev_level;
-       safestrncpy(CCC->cs_clientname, desc, sizeof CCC->cs_clientname);
-       CCC->cs_clientname[31] = 0;
-
-       /* For local sockets and public clients, trust the hostname supplied by the client */
-       if ( (CCC->is_local_socket) || (CtdlIsPublicClient()) ) {
-               safestrncpy(CCC->cs_host, from_host, sizeof CCC->cs_host);
-               CCC->cs_host[sizeof CCC->cs_host - 1] = 0;
-               CCC->cs_addr[0] = 0;
+       CC->cs_clientdev = dev_code;
+       CC->cs_clienttyp = cli_code;
+       CC->cs_clientver = rev_level;
+       safestrncpy(CC->cs_clientname, desc, sizeof CC->cs_clientname);
+       CC->cs_clientname[31] = 0;
+
+       /* For local sockets, allow the client to supply the user's origin address */
+       if (CC->is_local_socket) {
+               safestrncpy(CC->cs_host, from_host, sizeof CC->cs_host);
+               CC->cs_host[sizeof CC->cs_host - 1] = 0;
+               CC->cs_addr[0] = 0;
        }
 
        syslog(LOG_NOTICE, "session: client %d/%d/%01d.%02d (%s) from %s",
@@ -165,7 +164,7 @@ void cmd_iden(char *argbuf)
                (rev_level / 100),
                (rev_level % 100),
                desc,
-               CCC->cs_host
+               CC->cs_host
        );
        cprintf("%d Ok\n",CIT_OK);
 }
diff --git a/citadel/public_clients b/citadel/public_clients
deleted file mode 100644 (file)
index 504890c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-# public_clients
-#
-# This file contains a list of hosts at which well-known public
-# copies of client software exist.  If the originating host
-# for a client is one of these, then the server will use the
-# location of the user that it is told by the client.
-
-localhost
-127.0.0.1
index c838085aa829b7fe394801c5775c75389b0fca02..cc262d51de035705242a83c82447777811bba2cc 100644 (file)
@@ -147,7 +147,6 @@ enum {
        S_HOUSEKEEPING,
        S_DIRECTORY,
        S_NETCONFIGS,
-       S_PUBLIC_CLIENTS,
        S_FLOORCACHE,
        S_ATBF,
        S_JOURNAL_QUEUE,
index 8ca2bc19b601f752896720e63132e19e6f75ffd2..781d2c02644f4d8fbf4352215672ad2e6004c6d8 100644 (file)
 
 #ifdef HAVE_DB_H
 #include <db.h>
-#elif defined(HAVE_DB4_DB_H)
-#include <db4/db.h>
-#else
-#error Neither <db.h> nor <db4/db.h> was found by configure. Install db4-devel.
+#error <db.h> was not found by configure. Install the Berkeley DB development package.
 #endif
 
-
-#if DB_VERSION_MAJOR < 4 || DB_VERSION_MINOR < 1
-#error Citadel requires Berkeley DB v4.1 or newer.  Please upgrade.
+#if DB_VERSION_MAJOR < 5
+#error Citadel requires Berkeley DB v5 or newer.  Please upgrade.
 #endif
 
 #include "server.h"
index 11bad4f09e305606555a5f4930d5ebfe4b7d85ce..28f73b520f5dc2278d6e36557a230b356a8d5968 100644 (file)
 
 #ifdef HAVE_DB_H
 #include <db.h>
-#elif defined(HAVE_DB4_DB_H)
-#include <db4/db.h>
-#else
-#error Neither <db.h> nor <db4/db.h> was found by configure. Install db4-devel.
+#error <db.h> was not found by configure. Install the Berkeley DB development package.
 #endif
 
 #include "server.h"