* Replaced all "Citadel/UX" references with "Citadel"
authorArt Cancro <ajc@citadel.org>
Wed, 11 Aug 2004 04:09:19 +0000 (04:09 +0000)
committerArt Cancro <ajc@citadel.org>
Wed, 11 Aug 2004 04:09:19 +0000 (04:09 +0000)
36 files changed:
citadel/ChangeLog
citadel/Makefile.in
citadel/base64.c
citadel/citadel.h
citadel/citadel.lsm
citadel/citadel.nsi
citadel/citadel.rc
citadel/citadel.spec
citadel/citadel_ipc.c
citadel/citserver.c
citadel/configure.ac
citadel/database_cleanup.sh
citadel/database_sleepycat.c
citadel/docs/citadel.html
citadel/docs/windows-readme.txt
citadel/help/mail
citadel/help/software
citadel/messages.c
citadel/msgform.c
citadel/serv_calendar.c
citadel/serv_calendar.h
citadel/serv_imap.c
citadel/serv_pop3.c
citadel/serv_smtp.c
citadel/server_main.c
citadel/setup.c
citadel/sysconfig.h
citadel/sysdep.c
citadel/techdoc/PAM.txt
citadel/techdoc/citadelapi.txt
citadel/techdoc/developers.txt
citadel/techdoc/hack.txt
citadel/techdoc/netconfigs.txt
citadel/techdoc/session.txt
citadel/vcard.c
citadel/vcard.h

index 336aa39..866fe64 100644 (file)
@@ -1,4 +1,7 @@
  $Log$
+ Revision 623.16  2004/08/11 04:09:14  ajc
+ * Replaced all "Citadel/UX" references with "Citadel"
+
  Revision 623.15  2004/08/05 03:19:48  ajc
  * html.c: handle the <BLOCKQUOTE> tag properly
 
 
  Revision 620.19  2004/04/20 02:42:54  ajc
  * techdoc/binaries.txt : updated, now includes WebCit instructions
- * setup.c: detect when setup is run from within the Citadel/UX Ridiculously
+ * setup.c: detect when setup is run from within the Citadel Ridiculously
    Easy Installer and skip the directory prompt; the installer sets it.
 
  Revision 620.18  2004/04/14 18:43:51  nbryant
  * Add some #includes I apparently somehow missed
 
  Revision 590.42  2002/01/06 10:33:10  error
- * SSL/TLS support for the Citadel/UX wire protocol
+ * SSL/TLS support for the Citadel wire protocol
 
  Revision 590.41  2002/01/06 08:54:58  error
  * user_ops.c: fixed become_session() when calling EVT_LOGOUT session hooks
@@ -4544,7 +4547,7 @@ Revision 1.412  1999/11/05 03:53:47  ajc
 Revision 1.411  1999/11/03 04:01:20  ajc
 * Fixed buffer overrun problems in cmd_rchg(), cmd_hchg(), and cmd_uchg()
 * Removed my email address as the feedback content from the docs; replaced
-  it with a reference to the Citadel/UX web site.
+  it with a reference to the Citadel web site.
 
 Revision 1.410  1999/11/02 19:51:23  ajc
 * Fixed timeout problem for remote client sessions (all timeouts were set to
index 137ac0f..907288b 100644 (file)
@@ -1,4 +1,4 @@
-# Makefile for Citadel/UX
+# Makefile for Citadel
 #
 # NOTE: normally you should not have to modify the Makefile.  All
 # system-dependent configuration is in the "configure" script, which
index 8addb38..c9717d1 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Encode or decode file as MIME base64 (RFC 1341)
  * Public domain by John Walker, August 11 1997
- * Modified slightly for the Citadel/UX system, June 1999
+ * Modified slightly for the Citadel system, June 1999
  *
  */
 
index 78e9f8f..0559ba3 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * main Citadel/UX header file
+ * main Citadel header file
  * see copyright.txt for copyright information
  */
 
@@ -32,7 +32,7 @@ extern "C" {
 /*
  * Text description of this software
  */
-#define CITADEL        "Citadel/UX 6.23"
+#define CITADEL        "Citadel 6.23"
 
 /*
  * REV_LEVEL is the current version number (multiplied by 100 to avoid having
@@ -48,7 +48,7 @@ extern "C" {
 #define REV_MIN                591             /* Oldest compatible database */
 #define EXPORT_REV_MIN 623             /* Oldest compatible export files */
 
-#define SERVER_TYPE 0  /* zero for stock Citadel/UX; other developers please
+#define SERVER_TYPE 0  /* zero for stock Citadel; other developers please
                           obtain SERVER_TYPE codes for your implementations */
 
 /* Various length constants */
index baedc0c..8a47251 100644 (file)
@@ -1,20 +1,20 @@
 Begin4
-Title: Citadel/UX
+Title: Citadel
 Version: 6.21
 Entered-date: Thu May 20 12:10:30 EDT 2004
-Description: The Citadel/UX messaging platform for Unix systems.
-        In addition to BBS functionality, Citadel/UX also offers advanced
+Description: The Citadel messaging platform for Unix systems.
+        In addition to BBS functionality, Citadel also offers advanced
        messaging and groupware applications, including Internet e-mail
        through SMTP, POP3 and IMAP, instant messaging, and caledaring
        and scheduling.
 Keywords: citadel citadel/ux bbs ignet smtp pop3 imap calendar messaging mail
 Author: Art Cancro <ajc@uncensored.citadel.org>
-Maintained-by: Citadel/UX Developers <devel@citadel.org>
+Maintained-by: Citadel Developers <devel@citadel.org>
 Primary-site: http://www.citadel.org/
 Alternate-site: http://www.tux.org/pub/net/citadel/
 Original-site: http://uncensored.citadel.org/citadel/
 Platforms: Unix or Unix-like operating systems.
-        Citadel/UX is known to work on Linux, Solaris and Mac OS X 10.2
+        Citadel is known to work on Linux, Solaris and Mac OS X 10.2
        (Jaguar) or later.  GNU make is required and GCC is strongly
        recommended.  We've also had reports of success on Free/NetBSD
        and Windows with Cygwin.  For calendaring, libical-0.24.RC4
index e0cac01..d706e29 100644 (file)
@@ -3,7 +3,7 @@
 ; Get NSIS at http://www.nullsoft.com/
 
 !include "${NSISDIR}\Contrib\Modern UI\System.nsh"
-!define MUI_PRODUCT "Citadel/UX"
+!define MUI_PRODUCT "Citadel"
 !define MUI_VERSION "6.21"
 !define MUI_WELCOMEPAGE
 !define MUI_LICENSEPAGE
 OutFile "citadel-6.07.exe"
 BGGradient off
 
-LangString DESC_Citadel ${LANG_ENGLISH} "Citadel/UX client and core libraries (required)"
-LangString DESC_CitadelServer ${LANG_ENGLISH} "Citadel/UX server"
-LangString DESC_CitadelUtils ${LANG_ENGLISH} "Citadel/UX utilities"
+LangString DESC_Citadel ${LANG_ENGLISH} "Citadel client and core libraries (required)"
+LangString DESC_CitadelServer ${LANG_ENGLISH} "Citadel server"
+LangString DESC_CitadelUtils ${LANG_ENGLISH} "Citadel utilities"
 
 SetCompress auto
 SetDatablockOptimize on
-BrandingText "Citadel/UX "
+BrandingText "Citadel "
 CRCCheck force
 AutoCloseWindow true
 ShowInstDetails hide
@@ -40,7 +40,7 @@ InstallDir "$PROGRAMFILES\Citadel"
 InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel\CurrentVersion" "InstallDir"
 DirShow show
 
-Section "Citadel/UX Client and core libraries (required)" Citadel ; (default section)
+Section "Citadel Client and core libraries (required)" Citadel ; (default section)
 SetShellVarContext all
 SetOutPath "$INSTDIR"
 File C:\cygwin\home\error\cvs\citadel\citadel.exe
@@ -65,7 +65,7 @@ WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninst
 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel\CurrentVersion" "InstallDir" "$INSTDIR"
 SectionEnd ; end of default section
 
-Section "Citadel/UX Server" CitadelServer
+Section "Citadel Server" CitadelServer
 SetOutPath "$INSTDIR"
 File C:\cygwin\home\error\cvs\citadel\citserver.exe
 File C:\cygwin\bin\cygz.dll
@@ -88,7 +88,7 @@ CreateShortcut "$SMPROGRAMS\Citadel\Citadel Documentation.lnk" \
 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices" "Citadel" "$INSTDIR\citserver.exe -x9 -tcitadel-debug.txt"
 SectionEnd
 
-Section "Citadel/UX Utilities" CitadelUtils
+Section "Citadel Utilities" CitadelUtils
 SetOutPath $INSTDIR
 File C:\cygwin\home\error\cvs\citadel\aidepost.exe
 File C:\cygwin\home\error\cvs\citadel\citmail.exe
index 99ca964..73fcbf4 100644 (file)
@@ -10,7 +10,7 @@
 # 4. <current directory>/citadel.rc
 
 # Set ENCRYPT to yes to force SSL/TLS encryption when connecting to a
-# Citadel/UX server, even if the server is on the same machine as the
+# Citadel server, even if the server is on the same machine as the
 # client.  Set it to no to disable SSL/TLS encryption.  The default is to
 # enable encryption for remote systems and to disable encryption for
 # systems on the same machine as the client.
index 9c2bdda..3613d81 100644 (file)
@@ -1,5 +1,5 @@
 # $Id$
-Summary: Citadel/UX, the flexible, powerful way to build online communities
+Summary: Citadel, the flexible, powerful way to build online communities
 Name: citadel
 Version: 6.24
 Release: 1
@@ -8,7 +8,7 @@ Group: Applications/Communications
 Source0: http://my.citadel.org/download/citadel-ux-%{PACKAGE_VERSION}.tar.gz
 Buildroot: /var/tmp/citadel-%{PACKAGE_VERSION}-root
 #Icon: citux-64x64.xpm
-Vendor: Citadel/UX Development Team
+Vendor: Citadel Development Team
 URL:  http://uncensored.citadel.org/citadel/
 
 # I don't think we should actually Require this because we can be configured
@@ -70,7 +70,7 @@ rm -rf $RPM_BUILD_ROOT/usr/local/citadel/techdoc
 rm -rf "$RPM_BUILD_ROOT"
 
 %package server
-Summary: Citadel/UX, the flexible, powerful way to build online communities
+Summary: Citadel, the flexible, powerful way to build online communities
 Group: System Environment/Daemons
 Requires: citadel-data
 Obsoletes: citadel
@@ -81,7 +81,7 @@ Obsoletes: citadel-imap
 Obsoletes: citadel-mrtg
 Obsoletes: citadel-calendar
 %description server
-Citadel/UX is an advanced messaging system which can be used for BBS, email,
+Citadel is an advanced messaging system which can be used for BBS, email,
 groupware and online community applications.  It is multithreaded,
 client/server, database driven, and accessible via a growing selection of
 front ends.
@@ -133,11 +133,11 @@ if [ -f /etc/inittab ]; then
 fi
 
 %package data
-Summary: Data files for the Citadel/UX messaging system.
+Summary: Data files for the Citadel messaging system.
 Group: System Environment/Daemons
 %description data
-Default data files for the Citadel/UX messaging system.  These files are
-required by the Citadel/UX server.
+Default data files for the Citadel messaging system.  These files are
+required by the Citadel server.
 %defattr(-,root,root)
 %files data
 /usr/local/citadel/.hushlogin
@@ -179,11 +179,11 @@ required by the Citadel/UX server.
 /bin/ls /usr/local/citadel/help > "/usr/local/citadel/help/?"
 
 %package client
-Summary: Client for the Citadel/UX messaging system
+Summary: Client for the Citadel messaging system
 Group: Applications/Communications
 %description client
-This is the text client software for the Citadel/UX messaging system.
-Install this software if you need to connect to a Citadel/UX server.
+This is the text client software for the Citadel messaging system.
+Install this software if you need to connect to a Citadel server.
 %defattr(-,root,root)
 %files client
 /usr/local/citadel/citadel
index 103bc5b..9a07aa2 100644 (file)
@@ -1425,7 +1425,7 @@ int CtdlIPCIdentifySoftware(CtdlIPC *ipc, int developerid, int clientid,
                developerid = 8;
                clientid = 0;
                revision = REV_LEVEL - 600;
-               software_name = "Citadel/UX (libcitadel)";
+               software_name = "Citadel (libcitadel)";
        }
        if (!hostname) return -2;
 
@@ -1911,7 +1911,7 @@ int CtdlIPCStartEncryption(CtdlIPC *ipc, char *cret)
        }
        /* Pointless flag waving */
 #if SSLEAY_VERSION_NUMBER >= 0x0922
-       SSL_set_session_id_context(temp_ssl, "Citadel/UX SID", 14);
+       SSL_set_session_id_context(temp_ssl, "Citadel SID", 14);
 #endif
 
        if (!access("/var/run/egd-pool", F_OK))
index 9ef8208..9afecf8 100644 (file)
@@ -925,7 +925,7 @@ void citproto_begin_session() {
                        config.c_nodename, config.c_maxsessions);
        }
        else {
-               cprintf("%d %s Citadel/UX server ready.\n",
+               cprintf("%d %s Citadel server ready.\n",
                        CIT_OK, config.c_nodename);
        }
 }
index fc3ce91..72ce308 100644 (file)
@@ -1,7 +1,7 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl $Id$
 AC_PREREQ(2.52)
-AC_INIT([Citadel/UX], [6.15], [http://uncensored.citadel.org/])
+AC_INIT([Citadel], [6.15], [http://uncensored.citadel.org/])
 AC_REVISION([$Revision$])
 AC_CONFIG_SRCDIR([citserver.c])
 AC_PREFIX_DEFAULT(/usr/local/citadel)
index faf8a56..41a7f5c 100755 (executable)
@@ -3,7 +3,7 @@
 clear
 cat <<!
 
-Citadel/UX Database Cleanup
+Citadel Database Cleanup
 ---------------------------
 
 This script exports, deletes, and re-imports your database.  If you have
index 5117bb5..54a8504 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * Sleepycat (Berkeley) DB driver for Citadel/UX
+ * Sleepycat (Berkeley) DB driver for Citadel
  *
  */
 
index d564b2a..227a221 100644 (file)
@@ -1,13 +1,13 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
 <head>
-  <title>Citadel/UX Documentation</title>
+  <title>Citadel Documentation</title>
   <meta http-equiv="content-type"
  content="text/html; charset=ISO-8859-1">
 </head>
 <body>
 <div align="center">
-<h1>Citadel/UX</h1>
+<h1>Citadel</h1>
 <h2>a messaging and collaboration platform for BBS and groupware
 applications</h2>
 Copyright &copy;1987-2004 by the Citadel development team:<br>
@@ -552,7 +552,7 @@ DAMAGES. </p>
 </div>
 <div align="justify">
 <h3>Overview</h3>
-<p>Citadel/UX is an advanced, multiuser, client/server messaging system
+<p>Citadel is an advanced, multiuser, client/server messaging system
 suitable for BBS, e-mail, and groupware applications. It is designed to
 handle the needs of both small dialup systems and large-scale
 Internet-connected systems. It was originally developed on an Altos
@@ -561,7 +561,7 @@ and Unix-like platforms. The current development environment (and
 public BBS) is an ordinary Linux system. The current distribution
 includes: </p>
 <ul>
-  <li>The Citadel/UX server (this is the back end that does all
+  <li>The Citadel server (this is the back end that does all
 processing) </li>
   <li>A text-based client program designed with the traditional Citadel
 "look and feel" (room prompts, dot commands, and the like) </li>
@@ -571,7 +571,7 @@ processing) </li>
 </ul>
 <p>Some knowledge of the Unix system is necessary to install and manage
 the system. It is mandatory that the sysop have "root" access to the
-operating system. The following are required to install Citadel/UX: </p>
+operating system. The following are required to install Citadel: </p>
 <ul>
   <li>A Unix operating system (Linux, BSD, Solaris, Tru64, HP/UX) </li>
   <li>C compiler (<a href="http://gcc.gnu.org/">GCC</a> with <a
@@ -585,7 +585,7 @@ newer (if you want the calendar service to work)<br>
   </li>
   <li>Enough disk space to hold all of the programs and data </li>
 </ul>
-<p>If you are running Citadel/UX on a Linux system, it is STRONGLY
+<p>If you are running Citadel on a Linux system, it is STRONGLY
 recommended that you run it on a recent distribution (such as <a
  href="http://www.redhat.com">Red Hat</a> 7.3 or newer). A new-ish
 distribution will have most or all of the prerequisite tools and
@@ -751,7 +751,7 @@ The next couple of sections deal with client-side configuration.
 <h3><a name="Using_an_external_editor_for_message"></a>Using an
 external editor
 for message composition</h3>
-<p>Citadel/UX has a built-in message editor. However, you can also use
+<p>Citadel has a built-in message editor. However, you can also use
 your favorite text editor to write messages. To do this you simply put
 a line in your citadel.rc file like this:</p>
 <pre>editor=/usr/bin/vi<br></pre>
@@ -771,7 +771,7 @@ as'
 commands disabled, as well as any other functions which a destructive
 user could use to gain unauthorized access to your host system.</p>
 <h3><a name="Printing_messages"></a>Printing messages</h3>
-<p>Citadel/UX can send messages to a printer, or just about anywhere
+<p>Citadel can send messages to a printer, or just about anywhere
 else in your system. The variable <tt>PRINTCMD</tt> in <tt>citadel.rc</tt>
 specifies what command you use to print. Text is sent to the standard
 input (stdin) of the print command.</p>
@@ -841,7 +841,7 @@ this section and do what you need to in order to get things configured.</p>
 <p>Before you can use Citadel, you must define the "citadel" service to
 your system. This is accomplished by adding a line to your
 /etc/services file that looks something like this:</p>
-<pre>citadel           504/tcp                 # Citadel/UX Server<br></pre>
+<pre>citadel           504/tcp                 # Citadel Server<br></pre>
 <p>504 is the port number officially designated by the IANA for use by
 Citadel. There should not be any need to use a different port number,
 unless you are running multiple Citadels on the same computer and
@@ -982,7 +982,7 @@ install</tt> ?? </li>
 </ul>
 <p>To report a problem, you can log on to <a
  href="http://uncensored.citadel.org">UNCENSORED!</a> or any other BBS
-on the Citadel network which carries the <tt>Citadel/UX&gt;</tt> room.
+on the Citadel network which carries the <tt>Citadel&gt;</tt> room.
 Please DO NOT e-mail the developers directly. Post a request for help
 on the BBS, with all of the following information: </p>
 <ul>
@@ -1003,7 +1003,7 @@ command). </li>
 </div>
 <div align="justify">
 <h3><a name="Overview_"></a>Overview</h3>
-<p>Citadel/UX, when installed properly, will do most of its maintenance
+<p>Citadel, when installed properly, will do most of its maintenance
 by itself. It is intended to be run unattended for extended periods of
 time, and most installations do just that without any software failures.</p>
 <p>The system has seven access levels. Most users are at the bottom and
@@ -1410,7 +1410,7 @@ help files to suit whatever is appropriate for your system.</p>
 <p>There are several strings that you can put in help files that will
 be automatically
 substituted with other strings. They are:</p>
-<pre> <br> ^nodename    = The node name of your system on a Citadel/UX network<br> ^humannode   = Human-readable node name (also your node name on C86Net)<br> ^fqdn        = Your system's fully-qualified domain name<br> ^username    = The name of the user reading the help file<br> ^usernum     = The user number of the user reading the help file<br> ^sysadm      = The name of the system administraor (i.e., you)<br> ^variantname = The name of the software you're running<br> ^bbsdir      = The directory on the host system in which you have<br>                installed the Citadel system.<br></pre>
+<pre> <br> ^nodename    = The node name of your system on a Citadel network<br> ^humannode   = Human-readable node name (also your node name on C86Net)<br> ^fqdn        = Your system's fully-qualified domain name<br> ^username    = The name of the user reading the help file<br> ^usernum     = The user number of the user reading the help file<br> ^sysadm      = The name of the system administraor (i.e., you)<br> ^variantname = The name of the software you're running<br> ^bbsdir      = The directory on the host system in which you have<br>                installed the Citadel system.<br></pre>
 <p>So, for example, you could create a help file which looked like:</p>
 <pre>  "Lots of help, of course, is available right here on ^humannode.  Of<br>course, if you still have trouble, you could always bug ^sysadm about it!"<br><br></pre>
 <h3><a name="Site_configuration"></a>Site configuration</h3>
@@ -1829,7 +1829,7 @@ the
 server from a shell and watch it load. It might look something like
 this:</p>
 <font size="-2"> </font>
-<pre><font size="-2">smw @ pixel % ./citserver<br><br>Multithreaded message server for Citadel/UX<br>Copyright (C) 1987-2003 by the Citadel/UX development team.<br>Citadel/UX is open source, covered by the GNU General Public License, and<br>you are welcome to change it and/or distribute copies of it under certain<br>conditions.  There is absolutely no warranty for this software.  Please<br>read the 'COPYING.txt' file for details.<br><br>Loading citadel.config<br>Opening databases<br>This is GDBM version 1.8.0, as of May 19, 1999.<br>Checking floor reference counts<br>Creating base rooms (if necessary)<br>Registered a new service (TCP port 504)<br>Registered a new service (TCP port 0)<br>Initializing loadable modules<br>Registered server command CHAT (Begin real-time chat)<br>Registered server command PEXP (Poll for instant messages)<br>Registered server command GEXP (Get instant messages)<br>Registered server command SEXP (Send an instant message)<br>Registered server command DEXP (Disable instant messages)<br>Registered a new session function (type 0)<br>Registered a new x-msg function (priority 0)<br>Loaded module: $Id$<br>Registered a new session function (type 1)<br>Registered a new message function (type 201)<br>Registered a new message function (type 202)<br>Registered server command REGI (Enter registration info)<br>Registered server command GREG (Get registration info)<br>Registered a new user function (type 100)<br>Loaded module: $Id$<br>Server-hosted upgrade level is 5.62<br>Loaded module: $Id$<br>Registered server command EXPI (Expire old system objects)<br>Registered server command FSCK (Check message ref counts)<br>Loaded module: $Id$<br><b>citserver: Can't bind: Address already in use<br>ERROR: could not bind to TCP port 25.</b><br>Registered a new service (TCP port 0)<br>Registered a new session function (type 50)<br>Loaded module: $Id$<br><b>citserver: Can't bind: Address already in use<br>ERROR: could not bind to TCP port 110.</b><br>Registered a new session function (type 0)<br>Loaded module: $Id$<br>Registered a new message function (type 202)Loaded module: $Id$<br>Registered server command RWHO (Display who is online)<br>Registered server command HCHG (Masquerade hostname)<br>Registered server command RCHG (Masquerade roomname)<br>Registered server command UCHG (Masquerade username)<br>Registered server command STEL (Enter/exit stealth mode)<br>Loaded module: $Id$<br>Changing uid to 513<br>Starting housekeeper thread<br></font></pre>
+<pre><font size="-2">smw @ pixel % ./citserver<br><br>Multithreaded message server for Citadel<br>Copyright (C) 1987-2003 by the Citadel development team.<br>Citadel is open source, covered by the GNU General Public License, and<br>you are welcome to change it and/or distribute copies of it under certain<br>conditions.  There is absolutely no warranty for this software.  Please<br>read the 'COPYING.txt' file for details.<br><br>Loading citadel.config<br>Opening databases<br>This is GDBM version 1.8.0, as of May 19, 1999.<br>Checking floor reference counts<br>Creating base rooms (if necessary)<br>Registered a new service (TCP port 504)<br>Registered a new service (TCP port 0)<br>Initializing loadable modules<br>Registered server command CHAT (Begin real-time chat)<br>Registered server command PEXP (Poll for instant messages)<br>Registered server command GEXP (Get instant messages)<br>Registered server command SEXP (Send an instant message)<br>Registered server command DEXP (Disable instant messages)<br>Registered a new session function (type 0)<br>Registered a new x-msg function (priority 0)<br>Loaded module: $Id$<br>Registered a new session function (type 1)<br>Registered a new message function (type 201)<br>Registered a new message function (type 202)<br>Registered server command REGI (Enter registration info)<br>Registered server command GREG (Get registration info)<br>Registered a new user function (type 100)<br>Loaded module: $Id$<br>Server-hosted upgrade level is 5.62<br>Loaded module: $Id$<br>Registered server command EXPI (Expire old system objects)<br>Registered server command FSCK (Check message ref counts)<br>Loaded module: $Id$<br><b>citserver: Can't bind: Address already in use<br>ERROR: could not bind to TCP port 25.</b><br>Registered a new service (TCP port 0)<br>Registered a new session function (type 50)<br>Loaded module: $Id$<br><b>citserver: Can't bind: Address already in use<br>ERROR: could not bind to TCP port 110.</b><br>Registered a new session function (type 0)<br>Loaded module: $Id$<br>Registered a new message function (type 202)Loaded module: $Id$<br>Registered server command RWHO (Display who is online)<br>Registered server command HCHG (Masquerade hostname)<br>Registered server command RCHG (Masquerade roomname)<br>Registered server command UCHG (Masquerade username)<br>Registered server command STEL (Enter/exit stealth mode)<br>Loaded module: $Id$<br>Changing uid to 513<br>Starting housekeeper thread<br></font></pre>
 <p>The lines emphasized in boldface in the above log output tell you
 that Citadel "can't bind" to various ports. The error 'address already
 in use' generally means that something else is already running on the
@@ -2161,7 +2161,7 @@ backup.<br>
 <h3><a name="ImportingExporting_your_Citadel"></a>Importing/Exporting
 your Citadel database<br>
 </h3>
-<p>Citadel/UX contains an importer/exporter module, affectionately
+<p>Citadel contains an importer/exporter module, affectionately
 known as the "Art Vandelay" module (a not-so-obscure Seinfeld
 reference). It
 allows you to export the entire contents of your Citadel databases to a
index ae70580..be5e5e5 100644 (file)
@@ -3,7 +3,7 @@ README for Windows distribution
 
 Installation:
 
-  To install Citadel/UX for Windows, run the citadel-X.XX.exe file.  It is
+  To install Citadel for Windows, run the citadel-X.XX.exe file.  It is
   recommended that you do not change the installation folder.  Unlike the
   Unix version, you do NOT need to run Citadel's setup utility before
   starting the server.  However, the system operator will be set to the
@@ -20,12 +20,12 @@ Installation:
 
 Removal:
 
-  To remove Citadel/UX for Windows, go to Start > Control Panel > Add/Remove
+  To remove Citadel for Windows, go to Start > Control Panel > Add/Remove
   Programs, click Citadel, then click Add/Remove (or Change/Remove).  Your
   server data (users, messages, etc.) will NOT be removed.  To remove these
   files, delete the C:\Program Files\Citadel\data directory.
 
-Known Issues in Citadel/UX for Windows:
+Known Issues in Citadel for Windows:
 
 * Calendaring support is not included.  Status:  TO_BE_FIXED
 
index 69225ca..977b515 100644 (file)
@@ -11,7 +11,7 @@ user's name, followed by @ and then the system name. For example,
  Enter Recipient: Joe Schmoe @ citadrool
   
    To send mail to a user on the Internet, type their network address
-at the recipient prompt.  Citadel/UX will send it over the network:
+at the recipient prompt.  Citadel will send it over the network:
   
  Enter Recipient: ajc@herring.fishnet.com
    
index e98bba7..5a084ad 100644 (file)
@@ -1,5 +1,5 @@
-   Citadel/UX is the premier "online community" (i.e. Bulletin Board System)
+   Citadel is the premier "online community" (i.e. Bulletin Board System)
 software.  It runs on all POSIX-compliant systems, including Linux.  It is an
 advanced client/server application, and is being actively maintained.
  
-   For more info, visit UNCENSORED! BBS at uncnsrd.mt-kisco.ny.us
+   For more info, visit UNCENSORED! BBS at uncensored.citadel.org
index af01c50..f29dddf 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * Citadel/UX message support routines
+ * Citadel message support routines
  * see copyright.txt for copyright information
  */
 
index 26de208..ba6f2fd 100644 (file)
@@ -6,7 +6,7 @@
  * 
  * If the -q (quiet or qwk) flag is used, only the message text prints, and
  * then it stops at the end of the first message it prints.
- * This is used by the QWK reader for Citadel/UX during message format
+ * This is used by the QWK reader for Citadel during message format
  * translation.
  *
  */
index f537192..e60cba9 100644 (file)
@@ -2,7 +2,7 @@
  * $Id$ 
  *
  * This module implements iCalendar object processing and the Calendar>
- * room on a Citadel/UX server.  It handles iCalendar objects using the
+ * room on a Citadel server.  It handles iCalendar objects using the
  * iTIP protocol.  See RFCs 2445 and 2446.
  *
  */
index dabbaad..c12b140 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * iCalendar implementation for Citadel/UX
+ * iCalendar implementation for Citadel
  *
  */
 
index 3db072c..e456f92 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$ 
  *
- * IMAP server for the Citadel/UX system
+ * IMAP server for the Citadel system
  * Copyright (C) 2000-2002 by Art Cancro and others.
  * This code is released under the terms of the GNU General Public License.
  *
@@ -343,7 +343,7 @@ void imap_greeting(void)
        IMAP->cached_fetch = NULL;
        IMAP->cached_msgnum = (-1);
 
-       cprintf("* OK %s Citadel/UX IMAP4rev1 server ready\r\n",
+       cprintf("* OK %s Citadel IMAP4rev1 server ready\r\n",
                config.c_fqdn);
 }
 
index c5325d9..8401acc 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$ 
  *
- * POP3 service for the Citadel/UX system
+ * POP3 service for the Citadel system
  * Copyright (C) 1998-2001 by Art Cancro and others.
  * This code is released under the terms of the GNU General Public License.
  *
@@ -100,7 +100,7 @@ void pop3_greeting(void) {
        POP3->msgs = NULL;
        POP3->num_msgs = 0;
 
-       cprintf("+OK Citadel/UX POP3 server %s\r\n",
+       cprintf("+OK Citadel POP3 server %s\r\n",
                CC->cs_nonce);
 }
 
index 914e0ee..6f23e08 100644 (file)
@@ -135,7 +135,7 @@ void smtp_greeting(void) {
        snprintf(SMTP_RECPS, SIZ, "%s", "");
        snprintf(SMTP_ROOMS, SIZ, "%s", "");
 
-       cprintf("220 %s ESMTP Citadel/UX server ready.\r\n", config.c_fqdn);
+       cprintf("220 %s ESMTP Citadel server ready.\r\n", config.c_fqdn);
 }
 
 /*
index a5199b1..3e51f93 100644 (file)
@@ -144,10 +144,10 @@ int main(int argc, char **argv)
        lprintf(CTDL_NOTICE, "\n");
        lprintf(CTDL_NOTICE, "\n");
        lprintf(CTDL_NOTICE,
-               "*** Citadel/UX messaging server engine v%d.%02d ***\n",
+               "*** Citadel server engine v%d.%02d ***\n",
                (REV_LEVEL/100), (REV_LEVEL%100));
        lprintf(CTDL_NOTICE,
-               "Copyright (C) 1987-2003 by the Citadel/UX development team.\n");
+               "Copyright (C) 1987-2004 by the Citadel development team.\n");
        lprintf(CTDL_NOTICE,
                "This program is distributed under the terms of the GNU "
                "General Public License.\n");
index 02f5912..038c5c3 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * Citadel/UX setup utility
+ * Citadel setup utility
  *
  */
 
@@ -84,7 +84,7 @@ char *setup_text[] =
 "you run multiple instances of Citadel on the same computer and there's\n"
 "something else already using port 504.\n",
 
-"Setup has detected that you currently have data files from a Citadel/UX\n"
+"Setup has detected that you currently have data files from a Citadel\n"
 "version 3.2x installation.  The program 'conv_32_40' can upgrade your\n"
 "files to version 4.0x format.\n"
 " Setup will now exit.  Please either run 'conv_32_40' or delete your data\n"
@@ -467,7 +467,7 @@ void check_inittab_entry(void)
        if (infp == NULL) {
                display_error(strerror(errno));
        } else {
-               fprintf(infp, "# Start the Citadel/UX server...\n");
+               fprintf(infp, "# Start the Citadel server...\n");
                fprintf(infp, "%s:2345:respawn:%s -h%s -x3 -llocal4\n",
                        entryname, looking_for, setup_directory);
                fclose(infp);
@@ -761,7 +761,7 @@ int discover_ui(void)
 #ifdef HAVE_NEWT
        newtInit();
        newtCls();
-       newtDrawRootText(0, 0, "Citadel/UX Setup");
+       newtDrawRootText(0, 0, "Citadel Setup");
        return UI_NEWT;
 #endif
        return UI_TEXT;
@@ -815,7 +815,7 @@ int main(int argc, char *argv[])
                setup_type = discover_ui();
        }
        if (info_only == 1) {
-               important_message("Citadel/UX Setup", CITADEL);
+               important_message("Citadel Setup", CITADEL);
                cleanup(0);
        }
 
@@ -829,7 +829,7 @@ int main(int argc, char *argv[])
        }
 
        if (chdir(setup_directory) != 0) {
-               important_message("Citadel/UX Setup",
+               important_message("Citadel Setup",
                          "The directory you specified does not exist.");
                cleanup(errno);
        }
@@ -846,7 +846,7 @@ int main(int argc, char *argv[])
 
        /* Make sure it's stopped. */
        if (test_server() == 0) {
-               important_message("Citadel/UX Setup",
+               important_message("Citadel Setup",
                        "The Citadel service is still running.\n"
                        "Please stop the service manually and run "
                        "setup again.");
@@ -858,7 +858,7 @@ int main(int argc, char *argv[])
 
        case UI_TEXT:
                printf("\n\n\n"
-                       "               *** Citadel/UX setup program ***\n\n");
+                       "               *** Citadel setup program ***\n\n");
                break;
 
        }
@@ -979,7 +979,7 @@ int main(int argc, char *argv[])
 
        /*
           if (setuid(config.c_bbsuid) != 0) {
-          important_message("Citadel/UX Setup",
+          important_message("Citadel Setup",
           "Failed to change the user ID to your Citadel user.");
           cleanup(errno);
           }
@@ -995,8 +995,8 @@ int main(int argc, char *argv[])
        }
 
        if (old_setup_level < 555) {
-               important_message("Citadel/UX Setup",
-                                 "This Citadel/UX installation is too old "
+               important_message("Citadel Setup",
+                                 "This Citadel installation is too old "
                                  "to be upgraded.");
                cleanup(1);
        }
index c06f8f5..76f2855 100644 (file)
@@ -6,7 +6,7 @@
 /****************************************************************************/
 /*                  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 */
+/* C programs. If you are upgrading from an older version of Citadel, 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.                       */
index 1b89cb4..9c97ef2 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * Citadel/UX "system dependent" stuff.
+ * Citadel "system dependent" stuff.
  * See copyright.txt for copyright information.
  *
  * Here's where we (hopefully) have most parts of the Citadel server that
index 35f1880..fb1d277 100644 (file)
@@ -5,7 +5,7 @@ if you have Red Hat 7.1, you should look at the file anyway and understand how
 it affects your system security.  The original PAM.txt is included below:
  
  
-       Citadel/UX 5.53 and later include support for Pluggable Authentication
+       Citadel 5.53 and later include support for Pluggable Authentication
 Modules (PAM.) However, we don't recommend enabling this feature (./configure
 --with-pam) unless you understand exactly how it will affect your system's
 security. Specifically, the system administrator must supply a configuration
@@ -24,7 +24,7 @@ authentication modules on other platforms to be able to provide secure
 configurations.
  
        That said, the configuration we've provided should work on at least
-Red Hat Linux 4.2-5.2, (although we don't recommend building Citadel/UX on Red
+Red Hat Linux 4.2-5.2, (although we don't recommend building Citadel on Red
 Hat 4.x due to libc thread-safety issues) and if you understand PAM
-configuration on your system, feel free to build Citadel/UX with PAM support,
+configuration on your system, feel free to build Citadel with PAM support,
 as long as you realize that YOU'RE ON YOUR OWN.
index 1aad5fc..00dfa1b 100644 (file)
@@ -1,4 +1,4 @@
- Citadel/UX Server Extension API Documentation
+ Citadel Server Extension API Documentation
  ---------------------------------------------
  
   This is a VERY INCOMPLETE documentation of the API for extending the
index a88b7d8..71a5a01 100644 (file)
@@ -1,16 +1,16 @@
-Every client for the Citadel/UX system is capable of identifying itself with
+Every client for the Citadel system is capable of identifying itself with
 a developer code, client code, and client version.  Here are the known values
 for these fields.
  
  
 Developer codes (and where known, client codes)
 
- 0     The Citadel/UX core development team
+ 0     The Citadel core development team
        (See copyright.doc for the list of people involved in the project)
        Here are the client ID's we've used:
 
        Client  Name            Status          Description
-       0       Citadel         in production   Citadel/UX text based client
+       0       Citadel         in production   Citadel text based client
        1       lcit            dead            Curses-based text client
        2       WinCit          deprecated      MS Visual Basic client.
                                                Version 1.0 is stable but there
@@ -27,7 +27,7 @@ Developer codes (and where known, client codes)
 
        Client  Name            Status          Description
        0       libCxClient     in production   Client-side API library
-       1       Infusion        in production   Groupware for Citadel/UX
+       1       Infusion        in production   Groupware for Citadel
 
  2     Matthew Scott <gldnspud@telcomplus.com>
  
index 59c9fbf..bbcb0ac 100644 (file)
@@ -1,5 +1,5 @@
             ------------------------------------------------------
-             The totally incomplete guide to Citadel/UX internals
+             The totally incomplete guide to Citadel internals
             ------------------------------------------------------
 
  Citadel has evolved quite a bit since its early days, and the data structures
@@ -280,7 +280,7 @@ T   Date/Time       A 32-bit integer containing the date and time of
                         the message in standard UNIX format (the number
                         of seconds since January 1, 1970 GMT).
 U       Subject         Optional.  Developers may choose whether they wish to
-                        generate or display subject fields.  Citadel/UX does
+                        generate or display subject fields.  Citadel does
                         not generate them, but it does print them when found.
 0      Error           This field is typically never found in a message on
                        disk or in transit.  Message scanning modules are
@@ -352,7 +352,7 @@ please see network.txt on its operation and functionality (if any).
 
                        Portability issues
  
- Citadel/UX is 64-bit clean, architecture-independent, and Year 2000
+ Citadel is 64-bit clean, architecture-independent, and Year 2000
 compliant.  The software should compile on any POSIX compliant system with
 a full pthreads implementation and TCP/IP support.  In the future we may
 try to port it to non-POSIX systems as well.
index 53990bd..e76cbc1 100644 (file)
@@ -42,7 +42,7 @@ e-mail address instead of the sender's e-mail address.
  SYNTAX:       ignet_push_share|uncnsrd
  DESCRIPTION:
     Specifies that the second argument is the name of a neighboring node on an
-IGnet (Citadel/UX networking) network, to which this room should be pushed
+IGnet (Citadel networking) network, to which this room should be pushed
 (spooled).  Conceptually, this node will have a corresponding record pushing
 data in the other direction.
  
index 3875d33..8722916 100644 (file)
@@ -1,4 +1,4 @@
-                  SESSION LAYER PROTOCOL FOR CITADEL/UX
+                SESSION LAYER PROTOCOL FOR THE CITADEL SYSTEM
          (c) 1995-2004 by Art Cancro et. al.    All Rights Reserved
 
 
@@ -6,7 +6,7 @@
  ------------
 
  This is an attempt to document the session layer protocol used by the
-Citadel/UX system, beginning with version 4.00, which is the first version
+Citadel system, beginning with version 4.00, which is the first version
 to implement a client/server paradigm.  It is intended as a resource for
 programmers who intend to develop their own Citadel clients, but it may have
 other uses as well.
@@ -23,7 +23,7 @@ the same name but perform different functions.  If you don't coordinate new
 developments ahead of time, please at least send in an e-mail documenting
 what you did, so that your new commands can be added to this document.
 
- The coordinator of the Citadel/UX project is Art Cancro
+ The coordinator of the Citadel project is Art Cancro
 <ajc@uncensored.citadel.org>.
 
 
@@ -31,9 +31,9 @@ what you did, so that your new commands can be added to this document.
  ----------------------
 
  The protocols used below the session layer are beyond the scope of this
-document, but we will briefly cover the methodology employed by Citadel/UX.
+document, but we will briefly cover the methodology employed by Citadel.
 
- Citadel/UX offers Citadel BBS service using TCP/IP.  It does so via a
+ Citadel offers Citadel BBS service using TCP/IP.  It does so via a
 multithreaded server listening on a TCP port.  Local connections may also
 be made using the same protocol using Unix domain sockets.
 
@@ -124,7 +124,7 @@ an OK result code (the '2' in the 200) and three parameters: 80, 24, and
  COMMANDS
  --------
 
- This is a listing of all the commands that a Citadel/UX server can execute.
+ This is a listing of all the commands that a Citadel server can execute.
 
 
  NOOP   (NO OPeration)
@@ -453,11 +453,11 @@ which case that many message pointers will be returned, or "first" plus a
 number, for the corresponding effect.  If no parameters are specified, "all"
 is assumed.
 
- In Citadel/UX 5.00 and above, the client may also specify "gt" plus a number,
+ In Citadel 5.00 and above, the client may also specify "gt" plus a number,
 to list all messages in the current room with a message number greater than
 the one specified.
 
- The third argument, valid only in Citadel/UX 5.60 and above, may be either
+ The third argument, valid only in Citadel 5.60 and above, may be either
 0 or 1.  If it is 1, this command behaves differently: before a listing is
 returned, the client must transmit a list of fields to search for.  The field
 headers are listed below in the writeup for the "MSG0" command.
@@ -588,7 +588,7 @@ parts of the listing:
  Line 2  - The node name of the server BBS
  Line 3  - Human-readable node name of the server BBS
  Line 4  - The fully-qualified domain name (FQDN) of the server
- Line 5  - The name of the server software, i.e. "Citadel/UX 4.00"
+ Line 5  - The name of the server software, i.e. "Citadel 4.00"
  Line 6  - (The revision level of the server code) * 100
  Line 7  - The geographical location of the BBS (city and state if in the US)
  Line 8  - The name of the system administrator
@@ -619,7 +619,7 @@ even if your proprietary extensions aren't supported.
  -> Please contact Art Cancro <ajc@uncensored.citadel.org> and obtain a unique
 server type code, which can be assigned to your server program.
  -> If you document what you did in detail, perhaps it can be added to a
-future release of the Citadel/UX program, so everyone can enjoy it.  Better
+future release of the Citadel program, so everyone can enjoy it.  Better
 yet, just work with the Citadel development team on the main source tree.
 
  If everyone follows this scheme, we can avoid a chaotic situation with lots
@@ -758,7 +758,7 @@ always in some room.
 
  The opposite of GETA, used to set the Room Aide for the current room.  One
 parameter should be passed, which is the name of the user who is to be the
-new Room Aide.  Under Citadel/UX, this command may only be executed by Aides
+new Room Aide.  Under Citadel, this command may only be executed by Aides
 and by the *current* Room Aide for the room.  Return codes possible are:
  ERROR + NOT_LOGGED_IN          (Not logged in.)
  ERROR + HIGHER_ACCESS_REQUIRED (Higher access required.)
@@ -785,7 +785,7 @@ recipient of the message.
   2  -  Anonymous flag.  This argument is ignored unless the room allows
 anonymous messages.  In such rooms, this flag may be set to 1 to flag a
 message as anonymous, otherwise 0 for a normal message.
-  3  -  Format type.  Any valid Citadel/UX format type may be used (this will
+  3  -  Format type.  Any valid Citadel format type may be used (this will
 typically be 0; see the MSG0 command above).
   4  -  Subject.  If present, this argument will be used as the subject of
 the message.
@@ -923,7 +923,7 @@ this will be _BASEROOM_ since it is always there).
 
  This command is used to display system messages and/or help files.  The
 single argument it accepts is the name of the file to display.  IT IS CASE
-SENSITIVE.  Citadel/UX looks for these files first in the "messages"
+SENSITIVE.  Citadel looks for these files first in the "messages"
 subdirectory and then in the "help" subdirectory.
 
  If the file is found, LISTING_FOLLOWS is returned, followed by a pathname
@@ -947,7 +947,7 @@ may expect most servers to carry:
                  really paranoid, and warns that aides can still see
                  unlisted userlog entries.
 
- Citadel/UX provides these for the Citadel/UX Unix text client.  They are
+ Citadel provides these for the Citadel Unix text client.  They are
 probably not very useful for other clients:
 
  mainmenu     -  Main menu (when in idiot mode).
@@ -1126,7 +1126,7 @@ see elsewhere for more details.
 ever returned.  LISTING_FOLLOWS will be returned, followed by zero or more
 lines containing the following three fields:
 
- 0 - Session ID.  Citadel/UX fills this with the pid of a server program.
+ 0 - Session ID.  Citadel fills this with the pid of a server program.
  1 - User name.
  2 - The name of the room the user is currently in.  This field might not
 be displayed (for example, if the user is in a private room) or it might
@@ -1246,7 +1246,7 @@ read as if it were a download file.  This implies that an image and a download
 cannot be opened at the same time.  OIMG returns the same result codes as OPEN.
 
  All images will be in GIF (Graphics Interchange Format).  In the case of
-Citadel/UX, the server will convert the supplied filename to all lower case,
+Citadel, the server will convert the supplied filename to all lower case,
 append the characters ".gif" to the filename, and look for it in the "images"
 subdirectory.  As with the MESG command, there are several "well known"
 images which are likely to exist on most servers:
@@ -1255,7 +1255,7 @@ images which are likely to exist on most servers:
  goodbye      - Logoff banner graphics to be displayed alongside MESG "goodbye"
  background   - Background image (usually tiled) for graphical clients
 
- The following "special" image names are defined in Citadel/UX server version
+ The following "special" image names are defined in Citadel server version
 5.00 and above:
 
  _userpic_    - Picture of a user (send the username as the second argument)
@@ -1435,7 +1435,7 @@ this line, it must immediately exit from chat mode without sending any
 further traffic to the server.  The next transmission sent to the server
 will be a regular server command.
 
- The Citadel/UX server understands the following commands:
+ The Citadel server understands the following commands:
  /quit   -   Exit from chat mode (causes the server to do an 000 end)
  /who    -   List users currently in chat
  /whobbs -   List users currently in chat and on the bbs
@@ -1547,7 +1547,7 @@ is returned.
 
  MSG2 follows the same calling convention as MSG0.  The difference between
 the two commands is that MSG2 outputs messages in standard RFC822 format
-rather than in Citadel/UX proprietary format.
+rather than in Citadel proprietary format.
 
  This command was implemented in order to make various gateway programs
 easier to implement, and to provide some sort of multimedia support in the
@@ -1620,7 +1620,7 @@ are to be saved.
 The first parameter supplied to UIMG should be 0 if the client is only checking
 for permission to upload, or 1 if the client is actually attempting to begin
 the upload operation.  The second argument is the name of the file to be
-transmitted.  In Citadel/UX, the filename is converted to all lower case,
+transmitted.  In Citadel, the filename is converted to all lower case,
 appended with the characters ".gif", and stored in the "images" directory.
 
  UIMG returns OK if the client has permission to perform the requested upload,
index 4c2bcab..d0c51e1 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * vCard implementation for Citadel/UX
+ * vCard implementation for Citadel
  *
  * Copyright (C) 1999 by Art Cancro
  * This code is freely redistributable under the terms of the GNU General
index 3a1d06b..e62e7ae 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * $Id$
  *
- * vCard implementation for Citadel/UX
+ * vCard implementation for Citadel
  *
  * Copyright (C) 1999 by Art Cancro
  * This code is freely redistributable under the terms of the GNU General