* Semi-broken vCard replacement implementation in place.
[citadel.git] / citadel / ChangeLog
index e05e30e595b0fbce48f4535f131f27fd436f17c6..07c480735d90ac46b2edd7cd5bd92020cde56c9d 100644 (file)
@@ -1,3 +1,275 @@
+$Log$
+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
+
+Revision 1.352  1999/08/24 02:01:03  ajc
+* html.c: added.  This is an overly simplistic HTML-to-text converter.
+
+Revision 1.351  1999/08/21 18:37:29  ajc
+* Minor cosmetic cleanup.  No code changes.
+
+Revision 1.350  1999/08/21 05:15:34  ajc
+* mailinglist.c, netmailer.c: fixed to allow list submissions from all posters
+  on a Citadel network rather than only on the local system.
+
+Revision 1.349  1999/08/08 00:25:45  ajc
+* Made one more byte available in locate_host() and in all the structs which
+  its output gets written to (client can display 24 positions but we were only
+  saving 23).
+
+Revision 1.348  1999/08/07 16:34:38  nbryant
+* serv_icq.c: warning fixes
+
+Revision 1.347  1999/08/06 02:57:26  ajc
+* locate_host.c: use strdoop() and phree() instead of strdup() and free()
+* serv_icq.c: run learned IP's through Citadel's locate_host() & put in Wholist
+
+Revision 1.346  1999/08/05 17:58:59  ajc
+* RWHO command now returns express message code in postion 3
+
+Revision 1.345  1999/08/04 02:21:45  ajc
+* Fixed some bugs in the ICQ metaclient, and documented the new protocol cmds
+
+Revision 1.344  1999/08/03 11:34:35  ajc
+* Added client_icq.c and client_icq.h
+
+Revision 1.343  1999/08/03 03:14:51  ajc
+* Wrote the client side of the ICQ gateway.  Now on to other projects.  :)
+
+Revision 1.342  1999/08/03 01:52:06  ajc
+* Redesigned the client protocol commands for dealing with ICQ
+* Implemented page function priority ordering to prevent pages from being
+  simultaneously delivered over multiple IM systems
+* Migrated serv_icq.* into the Makefile
+
+Revision 1.341  1999/08/01 21:36:30  ajc
+* EXTREME coolness.  The server side of the ICQ metaclient is now working.
+  It is set up using ICQL and ICQA commands, it automatically logs the user
+  onto ICQ along with Citadel, and displays all non-offline ICQ contacts
+  in the Wholist.
+
+Revision 1.340  1999/07/31 07:18:01  ajc
+* Restructured the express message infrastructure, adding a class of function
+  hooks for the addition of multiple paging modules with message routing
+
+Revision 1.339  1999/07/30 22:20:19  ajc
+* Applied bugfix patches contributed by Vaggelis Tsirkas:
+  * rooms.c: buffer overrun fix
+  * room_ops.c: cmd_rdir() now behaves better when directory doesn't exist
+
+Revision 1.338  1999/07/30 03:32:24  ajc
+* Added strdoop(), a leak-checked version of strdup()
+* Small fixes to new API functions in msgbase.c
+* ICQ metaclient stores/reads config using the message base API functions
+
+Revision 1.337  1999/07/29 03:36:37  ajc
+* msgbase.c: reorganized.  output_message() now uses CtdlFetchMessage(),
+  cmd_msg3() now fetches directly from disk and spews to the client.
+
+Revision 1.336  1999/07/28 04:02:37  ajc
+* Server modules are now labelled with their RCS ID instead of a complex and
+  manually-updated data structure.
+
+Revision 1.335  1999/07/28 03:50:24  ajc
+* serv_expire.c: expire-by-age now calls CtdlFetchMessage() instead of
+  calling output_message() in MT_DATE mode.
+* msgbase.c: removed MT_DATE mode ('twas a sleazy hack)
+
+Revision 1.334  1999/07/27 22:47:26  ajc
+* Implemented new data type "CtdlMessage" which will eventually be used as
+  widely as possible to represent a message in memory.
+* Implemented CtdlFetchMessage() which is intended to become the back-end to
+  output_message() as well as a bunch of other things.
+
+Revision 1.333  1999/07/27 20:00:24  ajc
+Removed all references to CC->msglist and CC->num_msgs, and all utility
+functions which relied upon them.  Citadel Is Now Better.
+
+Revision 1.332  1999/07/27 19:32:22  ajc
+Removed serv_upgrade.c and all references to it in Makefile.in
+Reworked new-mail-count to not use MessageFromList() etc.
+
+Revision 1.331  1999/07/25 02:59:37  ajc
+Fixed reference count problem in cmd_move()
+
+Revision 1.330  1999/07/24 22:50:38  ajc
+Continued replacing references to [get|put]_msglist() with better code.
+For some reason, cmd_msgs() still doesn't always work right.
+
+Revision 1.329  1999/07/24 22:16:41  ajc
+Experimenting with automatic updating of ChangeLog by CVS.  Simply twiddle
+ChangeLog a bit (i.e. by adding or removing a newline from the end of the
+file) before issusing "cvs commit", and the comments recorded by CVS will
+automatically appear at the beginning of ChangeLog.
+
+Revision 1.328  1999/07/24 22:14:21  ajc
+cmd_move() now uses CtdlDeleteMessages().
+WARNING: build is temporarily broken.  Currently removing all references
+to the "msglist" kept in CitContext.  It's ugly and must die.
+
+Thu Jul 22 22:26:50 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Moved message deletion into new API function CtdlDeleteMessages()
+       * Added CtdlWriteObject() to store generic data in the msgbase
+       * Fixed really dumb error that prevented network msgs from posting
+
+Tue Jul 20 22:14:54 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Moved the actual work done in cmd_msgs() into a new API function
+         called CtdlForEachMessage() which is supplied a callback function.
+
+Mon Jul 19 23:24:18 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Keep the (unqualified) content-type in the SuppMsgInfo record.  We'll
+         be using this shortly to search rooms for specific object types.
+
+Sun Jul 18 14:53:16 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us> 
+       * Changes to dynloader et al to handle ICQ module being written
+       * serv_icq.c, serv_icq.mk: added (separate makefile is temporary)
+
+1999-07-17 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * chkpwd.c: DELETED CVS REVISION 1.3 (backed out Art's last change)
+         use 'cvs update -r 1.2 chkpwd.c; cvs update -A chkpwd.c' NOW to
+         avoid problems with working directories.
+       * Makefile.in: don't install chkpwd setuid if make install isn't
+         being run as root.
+       * citadel.spec: chmod u+s chkpwd during %install stage
+
+Fri Jul 16 18:39:04 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * PEXP and GEXP no longer trip the idle time display
+       * Fixed bug which duplicated incoming private mail to Trashcan
+       * Improved auto-reconnect by NOT using SIGPIPE and longjmp(); also
+         implemented a 15 second delay to wait for a crashed server to restart
+       * Relaxed the security check in chkpwd.c a bit; it was just flat-out
+         preventing logins on my system otherwise
+
+Thu Jul 15 22:57:32 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * eliminate redundant "name" parameter in [l]putuser(), now uses
+         usbuf->fullname to guarantee the correct name for the index
+
+1999-07-12 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * Makefile.in, configure.in: link netproc with gdbm
+       * netproc.c: only include gdbm.h if HAVE_GDBM_H
+       * user_ops.c: warning fix
+
+Mon Jul 12 19:51:30 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Mail is now saved in both sender and recipient mailboxes.  This is
+         structured in a way that will allow a separate "outbox" room and/or
+         multiple recipients in the future.
+
+Sun Jul 11 18:46:48 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * netproc.c: msgfind() no longer uses the timestamp as a message-ID
+         when no other message-ID is available (it screws up the loopzapper)
+       * room_ops.c: eliminate room name parameter in putroom() and its ilk;
+         get data from quickroom.QRname instead; prevents incorrect indexes
+       * Tentative implementation of "personal rooms" (user-private namespace)
+       * Added supplementary message info records for info that may change
+         at some time later than when the message is saved (i.e. ref counts)
+       * Implemented msg reference count increment/decrement; delete messages
+         whose reference count reaches zero
+
+Wed Jul  7 23:25:09 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * control.c: create citadel.control if it doesn't exist (yikes!)
+       * serv_expire.c: purge mailbox rooms belonging to non-existent users
+       * user_ops.c: don't delete user's mailbox at user-delete time
+
+Mon Jul  5 17:01:29 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * utilsmenu: removed menu items for defunct utilities
+
+Mon Jun 28 16:24:10 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Changed any remaining references to UUCP, to "Internet" instead.
+
 Thu Jun 24 11:13:23 EDT 1999 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
        * added server command line option "-f" to defrag databases on startup
        * control.c: better performance and reliability in [get|put]_control()
@@ -1025,4 +1297,4 @@ Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
        * Makefile.in: removed msgstats
 
 Fri Jul 10 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
-       * Initial CVS import
+       * Initial CVS import