$Log$
+Revision 1.439 2000/01/12 03:56:27 ajc
+* sysdep.c: start the housekeeping thread *after* dropping root perms.
+
+Revision 1.438 2000/01/09 19:03:16 ajc
+* Removed the fifo-based protocol downloads and replaced it with a less
+ elegant "download temporary file to client, then sx/sb/sz" because
+ downloading through a fifo was confusing some software.
+
+Revision 1.437 2000/01/08 22:19:44 ajc
+* Completed spool to outbound delivery queue (still no queue sender implemented)
+
+Revision 1.436 2000/01/08 05:00:09 ajc
+* Reworked some of the data structures to handle multiple recipients
+* Began implementation of the delivery queue
+* Added CtdlReallocUserData()
+* CtdlSaveMsg() now returns the local message ID in the database
+
+Revision 1.435 2000/01/06 03:50:34 ajc
+* Replaced citmail.c with a new one that simply SMTP-forwards to Citadel
+* Started outbound SMTP queue work
+
+Revision 1.434 1999/12/30 04:56:29 ajc
+* Got initial SMTP delivery working in a very specific situation (delivery
+ to a single, local user)
+
+Revision 1.433 1999/12/29 04:44:00 ajc
+* client_chat.c: display "No message sent" if a send page is aborted.
+ Closes bug #2 in bugzilla.
+
+Revision 1.432 1999/12/26 21:50:07 ajc
+* serv_vcard: don't run hooks when not logged in (such as in SMTP sessions)
+* serv_pop3: added. This is the skeleton for a module implementing POP3.
+
+Revision 1.431 1999/12/23 04:46:23 ajc
+* "Finished" initial hack of RFC822 import
+
+Revision 1.430 1999/12/22 04:46:34 ajc
+* Fixed up the "Date:" headers to be RFC822-compliant
+
+Revision 1.429 1999/12/13 05:30:57 ajc
+* Removed our naive 'conv_date()' RFC822-to-unixtime conversion function
+ and replaced it with the public domain 'parsedate()' function from UseNet
+
+Revision 1.428 1999/12/10 23:58:25 ajc
+* internet_addressing.c: added. (Internet address to Citadel mapping)
+
+Revision 1.427 1999/12/10 21:34:19 ajc
+* serv_smtp: implemented RFC821 "VRFY" and "EXPN" commands
+
+Revision 1.426 1999/12/09 05:01:14 ajc
+* Split cmd_user() and cmd_pass() into frontend/backend functions
+* serv_smtp: implemented AUTH LOGIN for client authentication
+
+Revision 1.425 1999/12/09 00:22:58 ajc
+* Finished the "arbitrary service" registration.
+* Eliminated "special" master socket for Citadel protocol - just register it
+ like any other protocol.
+* Began initial implementation of native SMTP service.
+
+Revision 1.424 1999/12/08 18:09:10 ajc
+* Added CtdlRegisterServiceHook() and its data type, for implementing arbitrary
+ TCP-based services directly in the Citadel server. Not finished yet.
+
+Revision 1.423 1999/11/29 17:39:07 nbryant
+* citserver.c: Solaris lacks inet_aton; use inet_addr instead
+
+Revision 1.422 1999/11/29 17:26:15 nbryant
+* citserver.c: include <sys/types.h>; may help portability to Solaris
+
+Revision 1.421 1999/11/22 00:27:42 ajc
+* Added some temporary variables to OpenCmdResult(). Hopefully fixes
+ bug #14 when running on FreeBSD.
+
+Revision 1.420 1999/11/21 18:30:16 ajc
+* Protected cmd_move() from buffer overrun (no longer crashes the server)
+* cmd_chat() -- truncate input at 100 characters to prevent buffer overruns.
+ Also handle broken client sockets properly. (Thanks to DME for bug report)
+
+Revision 1.419 1999/11/19 01:57:40 ajc
+* Fixed a *serious* memory leak in the database function wrappers.
+* Updated version number to 5.60 -- run setup when installing this version.
+
+Revision 1.418 1999/11/18 03:29:20 ajc
+* Changed the order of parameters in <.A>ide <S>ystem config into a more
+ logical grouping.
+
+Revision 1.417 1999/11/18 02:31:50 ajc
+* Updated some of the documentation
+* Brought the internal version number up to 5.60
+
+Revision 1.416 1999/11/17 04:15:05 ajc
+* Removed the session_count() function. Instead, keep a reference count
+ updated when sessions begin and end.
+* Replaced fixed number of worker threads with lower and upper limits; current
+ code now tries to make thread count == session count, within these limits
+
+Revision 1.415 1999/11/15 03:17:39 ajc
+* Put lockfile in /tmp instead of in /var/lock. The latter is not guaranteed
+ to exist, nor is it guaranteed to be writable by BBSUID
+ (Resolves bug #11 from the Bugzilla repository)
+
+Revision 1.414 1999/11/15 03:07:24 ajc
+* Fixed the network-wide vCard purge logic so that it (1) actually works,
+ and (2) forces a netproc run immediately when a purge is entered
+
+Revision 1.413 1999/11/09 21:20:44 nbryant
+* configure.in: include <sys/types.h> when doing checks which require <utmp.h>
+ (should fix Bug #10 on FreeBSD)
+
+Revision 1.412 1999/11/05 03:53:47 ajc
+* Issue 'cancel' messages for vCard when a user is deleted.
+* Try to delete 'cancel' messages locally after they've been distributed.
+
+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.
+
+Revision 1.410 1999/11/02 19:51:23 ajc
+* Fixed timeout problem for remote client sessions (all timeouts were set to
+ 1 second ... probably a temporary hack that was missed in the cleanup)
+
+Revision 1.409 1999/11/02 03:03:27 ajc
+* Several fixes to msgbase.c and netproc.c to prevent corrupted incoming
+ network traffic from crashing the server. Reject bad messages.
+
+Revision 1.408 1999/11/01 04:21:34 ajc
+* Fixed a concurrency bug which crashed the server when multiple sessions
+ terminated simultaneously.
+
+Revision 1.407 1999/11/01 00:54:02 ajc
+* CtdlFetchMessage() - generate a "<no text>" message body if there's none
+ on disk. Too much stuff goes haywire if there's no M field.
+
+Revision 1.406 1999/10/31 18:17:17 ajc
+* Fixed buffer overrun in cmd_rchg()
+* Call master_cleanup() when time_to_die==1 for proper shutdown
+
+Revision 1.405 1999/10/31 16:26:55 ajc
+* Fixed incorrect assignment of new session ID's
+
+Revision 1.404 1999/10/31 04:17:17 ajc
+* Fixed a bug which was crashing the server during very long message entry.
+
+Revision 1.403 1999/10/29 01:48:45 ajc
+* database.c: Removed arbitrary limit on maximum number of sessions
+
+Revision 1.402 1999/10/29 01:03:03 ajc
+* Debugged all possible ways for a session to terminate; do them cleanly.
+* Assign session numbers in a more portable and less arbitrary way.
+
+Revision 1.401 1999/10/28 19:50:55 ajc
+* Fixed a problem where the client protocol would spit out two responses
+ and therefore get out of sync if ASUP command set the access level to
+ 0 and therefore deleted the user (thanks to Eric McDonald)
+
+Revision 1.400 1999/10/28 05:08:49 ajc
+* Removed all of the thread cancellation cruft that is no longer necessary
+* Moved the now non-system-dependent RemoveContext() out of sysdep.c (now
+ it's part of cleanup() in citserver.c)
+* Removed all references to pthread_* from all modules except sysdep.c
+
+Revision 1.399 1999/10/28 03:20:17 ajc
+* Fixed the problem of worker threads waking up prematurely.
+* 'QUIT'-terminated sessions now exit properly.
+
+Revision 1.398 1999/10/27 04:26:58 ajc
+* Initial hack of worker-thread rearchitecture. Right now it is successfully
+ dispatching worker threads to active client sockets (and to the master
+ socket too, of course). Removing sessions is currently broken.
+
+Revision 1.397 1999/10/26 20:20:29 ajc
+* Removed the auto-reconnect stuff... it was locking the client in an active
+ loop more often than it was reconnecting.
+
+Revision 1.396 1999/10/26 13:59:11 ajc
+damn bugs
+
+Revision 1.395 1999/10/26 03:48:39 ajc
+* Shuffled around the order of events when a thread is terminating. All
+ mutex operations now happen prior to the freeing of the CitContext structure,
+ otherwise begin_critical_section() and end_critical_section() try to
+ manipulate the context's mutex count when there isn't any context.
+
Revision 1.394 1999/10/26 03:21:16 ajc
* Changed a lot of strncpy() calls to safestrncpy() and replaced most of their
hardcoded size arguments with 'sizeof' based arguments.
-* Moved the CitContext destruction into the housekeeper thread and out of the
- thread being cancelled. Didn't fix it, though (to see what happens, link
- the server against ElectricFence and watch what happens when a session ends).
Revision 1.393 1999/10/24 19:22:51 nbryant
* Makefile.in, configure.in: added --enable-icq flag; made checks for
Fri Jul 10 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
* Initial CVS import
+