* Removed our naive 'conv_date()' RFC822-to-unixtime conversion function
[citadel.git] / citadel / ChangeLog
index 18934e56ffb372c9817a58cc09af1bf59910c80b..eeb9daecb1c56929590037d9964b5f5ca6f87c01 100644 (file)
@@ -1,4 +1,296 @@
 $Log$
+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.
+
+Revision 1.393  1999/10/24 19:22:51  nbryant
+       * Makefile.in, configure.in: added --enable-icq flag; made checks for
+         authentication libraries more intelligent.
+
+Revision 1.392  1999/10/23 03:39:12  ajc
+* Finished moving vCard functionality to the new message base functions.
+
+Revision 1.391  1999/10/21 00:50:14  ajc
+* Finished up the flags and replication checks in CtdlSaveMsgPointerInRoom().
+
+Revision 1.390  1999/10/20 16:46:27  ajc
+* More code shuffle.  Added some flags to CtdlSaveMessagePointerInRoom() and
+  enabled the MOVE command to also do a "copy" operation (actually just
+  creates a second link and bumps the ref count).  Implemented "<C>opy" in
+  the client.
+
+Revision 1.389  1999/10/20 16:07:48  ajc
+* Wholist fixes for users who are in chat mode
+
+Revision 1.388  1999/10/20 03:42:29  ajc
+* In the wholist, only show <private room> if the user viewing the list
+  doesn't know that room.  Otherwise show the name.
+
+Revision 1.387  1999/10/20 02:59:22  ajc
+* Code reorganization.  Making it easier to move/copy messages without
+  duplicating existing code.
+
+Revision 1.386  1999/10/17 02:25:18  ajc
+* Discovered a huge design flaw in the replication algorithm.  Ripped it
+  out and replaced it with something a bit more robust.
+
+Revision 1.385  1999/10/16 05:30:17  ajc
+* Changes to message replication code.  Don't do server-side hooks during
+  an ENT3 command.  Also fixed a bug in cmd_whok() that caused crashes
+  after a file format change.
+
+Revision 1.384  1999/10/14 03:04:16  ajc
+* Finished the netproc side of Z (zap/supersede) processing for replication
+
+Revision 1.383  1999/10/13 04:24:18  ajc
+* Added search-by-header-fields to CtdlForEachMessage(), and then to the
+  server MSGS command.  This will have lots of uses.
+
+Revision 1.382  1999/10/13 01:36:39  ajc
+* Starting some work on network zap (supersede) mode for replication
+
+Revision 1.381  1999/10/08 02:55:57  ajc
+* More vCard-related debugging
+
+Revision 1.380  1999/10/07 02:58:46  ajc
+* Semi-broken vCard replacement implementation in place.
+* Added "Z" (Zap, supersede) field to message format
+
+Revision 1.377  1999/10/04 03:19:52  ajc
+* We now have a housekeeping thread and a housekeeping queue.
+
+Revision 1.376  1999/10/03 21:48:21  ajc
+* Added serv_upgrade.h to automagically convert pre-5.55 format user records
+  to 5.55 format user records and generate vCards.
+
+Revision 1.375  1999/09/29 21:13:17  ajc
+* CtdlWriteObject() can now store objects in personal rooms for any specified
+  user -- rather than only the current user or non-personal rooms.
+
+Revision 1.374  1999/09/29 17:26:56  ajc
+* serv_vcard.c: fixed crashola bug in cmd_greg()
+* tools.c: simplified and improved the string tokenizer.  Now it runs in a
+           single pass with no intermediate buffer.
+
+Revision 1.373  1999/09/28 03:27:37  ajc
+* Fully migrated cmd_greg() and cmd_regi() into serv_vcard (still has bugs)
+
+Revision 1.372  1999/09/27 03:33:40  ajc
+* cmd_regi() is now in serv_vcard and writes to the vcard instead of to the
+  usersupp file.  Still needs tweaking.
+
+Revision 1.371  1999/09/24 03:32:19  ajc
+* "read my vCard" and "write my vCard" are written and tested.
+
+Revision 1.370  1999/09/24 02:54:17  ajc
+* Worked a little more on the vCard stuff.  The serv_vcard module is now in
+  place, and a "read my vcard" function is there; "write my" is next...
+
+Revision 1.369  1999/09/23 03:07:56  ajc
+* The vCard 'class' is now linked into the server, though it's not really
+  functional yet.  Its constructors/destructors are debugged, though.
+
+Revision 1.368  1999/09/19 21:28:33  ajc
+* Finished off the message architecture stuff with a new class of hooks to
+  enable future server-side handlers.
+
+Revision 1.367  1999/09/19 15:57:06  ajc
+* migrated cmd_ent3() to CtdlSaveMessage()
+
+Revision 1.366  1999/09/19 05:13:57  ajc
+* Debugged the new version of CtdlWriteObject()
+
+Revision 1.365  1999/09/16 03:23:23  ajc
+* Did most of the migration from save_message() to CtdlSaveMsg().  The
+  latter builds a "struct CtdlMessage" (so we can run server-side handlers
+  against it later on), then serializes it and stores to disk.
+* BROKEN BUILD ALERT!!  cmd_ent3() and CtdlWriteObject() are still not
+  migrated.  They are stubbed out and will MALFUNCTION if used right now!!
+
+Revision 1.364  1999/09/07 01:42:42  ajc
+* cmd_msg3() now uses serialize_message() for its output.  All message
+  commands will eventually exist as a "struct CtdlMessage" at some point
+  so that we can install server-side handler hooks.
+
+Revision 1.363  1999/09/07 00:04:13  ajc
+* netproc.c: put outgoing messages into the use table, too -- this prevents
+  locally originated messages from showing up again if a remote system is
+  misconfigured and spools them back to us.
+
+Revision 1.362  1999/09/06 03:39:15  ajc
+* citadel.c: run strproc() on new passwords
+
+Revision 1.361  1999/09/03 17:50:26  playcow
+For URL view, don't prompt user to select url if there is only one.  Display
+<U>RL View prompt if message contains url(s). -Ben
+
+Revision 1.360  1999/09/02 02:09:59  ajc
+* msgbase.c: new function serialize_message() for future use
+
+Revision 1.359  1999/09/01 21:09:25  ajc
+* database.c: display the GDBM version string on startup
+
+Revision 1.358  1999/09/01 02:36:34  ajc
+* Actually _enforce_ the max msg len limit
+
+Revision 1.357  1999/09/01 01:51:48  ajc
+* Added the ability to handle embedded URL's from the text client
+
+Revision 1.356  1999/09/01 01:02:47  ajc
+* Implemented "maximum message length" in global system config
+
+Revision 1.355  1999/08/31 00:57:17  ajc
+* Handle multipart/alternative properly during legacy message outputs.
+  Basically it just prints the first alternative and skips the rest.
+
+Revision 1.354  1999/08/29 21:12:24  ajc
+* Made some changes to the output of MIME (especially multipart) messages.
+
 Revision 1.353  1999/08/29 19:56:43  ajc
 * HTML updates
 
@@ -1204,4 +1496,3 @@ Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
 
 Fri Jul 10 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
        * Initial CVS import 
-