minor documentation changes
[citadel.git] / citadel / ChangeLog
index ec45b69a9bddb024a2d8983fa269c390e46d4383..33f7be86a1960545ca252d6a8ad56e19ede9bc7c 100644 (file)
@@ -1,3 +1,312 @@
+Tue Oct 27 00:08:16 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * minor documentation changes
+
+Sun Oct 25 14:57:40 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * messages.c: fixed an oversight that was allowing attachments even
+         when disabled in citadel.rc
+
+1998-10-25 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * routines2.c: warning fix
+
+Sat Oct 24 22:07:56 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Client: added message expiration policy questions to room edit
+       * Client: added <.A>ide <S>ystem configuration command
+
+1998-10-24 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * Makefile.in: Auto dependency generation (may require GNU make, but
+         does at least function without this feature on OSF/1 make);
+         Makefile is regenerated when Makefile.in changes (ditto);
+         `realclean' is now known as `distclean';
+         portability fixes for older Unix make utilities
+       * citadel.c, citadel.h, commands.c: make client suspendable
+
+Fri Oct 23 19:34:38 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * setup.c: default node name is now obtained from uname()
+       * config.c: added put_config()
+       * policy.c: added, moved GetExpirePolicy() from room_ops.c
+       * policy.c: implemented cmd_gpex() and cmd_spex()
+
+Wed Oct 21 22:24:48 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Mail rooms now hide their owner-prefix from the client.
+       * proxy.c: added configurability and primitive message expiry
+
+1998-10-20 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * Makefile.tmpl: fix to build client with old Configure script
+       * configure.in: autologin defaults to enabled if crypt() is available
+       * room_ops.c: fix improper null-termination bug I introduced
+
+Mon Oct 19 20:52:55 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Client ability to force display of prompts in Mail rooms, even when
+         the user has prompting turned off (citadel.rc option)
+
+1998-10-16 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * sysdep.c (cprintf): generate a newline on truncated buffer
+       * room_ops.c: exploitable overrun fixes
+
+Thu Oct 15 19:27:32 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * msgbase.c: reimplemented cmd_move()
+         room_ops.c: wrote AddMessageToRoom() which is used for both entering
+         and moving messages.
+       * setup.c: system-default message expire policy of "number of
+         messages, 150" is now a default configuration instead of a temp hack
+       * proxy.c: cache dir create now dies on any error except EEXIST
+
+Wed Oct 14 22:41:16 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Misc code cleanup
+
+1998-10-13 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * configure.in: don't check for -lcrypt unless autologin is enabled
+       * file_ops.c: fix another overrun
+
+Mon Oct 12 15:27:21 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Killed the "rooms" subdirectory (it isn't used anymore)
+       * dynloader.c: Made dynamically added server commands case-insensitive
+       * import.c is now serv_upgrade.c, a module
+       * Removed most of the "level 9" trace messages no longer needed
+
+1998-10-12 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * Makefile.in: simplified to use pattern rules; files compiled with
+         -D_REENTRANT go to *.ro to allow the same files to be used with both
+         client and server
+       * tools.c, tools.h: new files; misc routines used by both client and
+         server go here. contains safestrncpy() at the moment.
+       * rooms.c: fix several exploitable buffer overruns
+       * sysdep.c: fix infinite loop when long lines are received from the
+         client; fix exploitable buffer overrun in cprintf()
+       * ipc_c_tcp.c: fix infinite loop on long line from server
+       * serv_upgrade.sh: remove uncnsrd-dependent absolute path
+       * .cvsignore: add *.ro
+
+Sun Oct 11 23:17:48 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Built some more of the message expiry infrastructure
+
+1998-10-11 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * citserver.c: fix two more overruns, one of which was preventing
+         the "From Host" from showing up in the <W>ho listing.
+
+Sun Oct 11 02:51:55 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Moved "struct visit" and its associated defs from citadel.h to
+         server.h where they belong
+       * Set up data structures for room policies (expiry, etc.)
+
+1998-10-10 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * citserver.c: fix overrun which caused segv's on servers with long
+         hostnames.
+
+Fri Oct  9 18:34:06 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * user_ops.c: added PurgeStaleRelationships() to do processing at
+         session logout time to remove visits for rooms which no longer exist
+       * user_ops.c: implemented NewMailCount()
+
+1998-10-09 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * serv_chat.c: fix buffer overrun that was resulting in segv's
+       * serv_chat.c: fix another overrun that could cause sessions to hang,
+         and cleaned up some other strncpy()-related stuff. DON'T FORGET TO
+         NULL-TERMINATE DESTINATION BUFFERS AFTER STRNCPY CALLS.
+
+Fri Oct  9 13:22:37 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Implemented "lazy mode" traversal - pressing the space bar will do
+         <N>ext messsage, <G>oto next room, or read <N>ew as appropriate.
+       * room_ops.c: modify CtdlRoomAccess() to allow access to mailbox rooms
+         only to their owners.
+
+Thu Oct  8 17:13:27 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * messages.c, citadel.rc: added the ability to display message numbers
+         in the header when reading messages.  I think this is butt ugly, but
+         some of the DaveCode afficionados seem to like it...
+
+Thu Oct  8 15:34:45 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * room_ops.c: Added is_noneditable() function to replace all of the
+         duplicated code present in all functions which edit room parameters.
+
+1998-10-08 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * lots of warning fixes; builds with -std1 on dec unix
+       * aidepost.c, citadel.h, citmail.c, file_ops.c, msgbase.c, netmailer.c,
+         netproc.c, rcit.c, server.h, stats.c, userlist.c: use time_t where
+         needed
+       * control.c, room_ops.c, serv_chat.c, sysdep.c: use memset() instead of
+         bzero()
+       * dynloader.c, dynloader.h, messages.c, server.h, sysdep.c,
+         sysdep_decls.h: function pointer/prototyping fixes
+       * rooms.c: use mkfifo(3) instead of system("mkfifo")
+
+1998-10-07 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * snprintf.c, snprintf.h: new files
+       * Makefile.in, configure.in, dynloader.c, sysdep.c: support for the
+         above; citserver now builds and runs on Digital Unix 4.0d with the
+         GNU-style configure script. there is a bug with the hostname display
+         in the wholist.
+       * netproc.c: sillyness fix
+       * room_ops.h: prototype delete_room()
+       * client_chat.c, commands.c, serv_chat.c, sysdep.c:
+         use HAVE_SYS_SELECT_H macro
+
+Mon Oct  5 17:01:32 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Began fixing the stuff I broke
+
+Sun Oct  4 23:35:18 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Did the big migration to the new data structures.  Lots of stuff is
+         now broken.  Basic moving from room to room works, but Mail is
+         broken, and some of the administrative commands are unimplemented.
+
+1998-10-02 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * configure.in: autologin now defaults to disabled
+
+Fri Oct  2 00:04:31 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Finally removed all three usersupp.foo[MAXROOMS] elements, and
+         migrated all the code that used them to use "struct visit" instead.
+
+Thu Oct  1 23:02:20 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Rewrote [l][get|put]room() functions to use room names rather than
+         room index numbers.  Temporarily prepended a "n" to these four
+         function names until they are put to use.
+
+Thu Oct  1 16:27:13 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Removed a few more references to usersupp.lastseen[]
+
+1998-10-01 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * .cvsignore: add so_locations (generated by osf1 ld with shared libs)
+       * Makefile.in: restructured variables for greater consistency, use
+         @echo to print out notices during the make process, add so_locations
+         to `cleaner'
+       * configure.in, Makefile.in: configure checks for -rdynamic
+       * ipc_c_tcp.c: fix DEC compiler warning wrt unsigned char
+       * stats.c: add semicolon to placate DREC compiler
+       * user_ops.c: define _POSIX_C_SOURCE, include <limits.h>
+       * configure.in: pass -pthread to DEC compiler, don't check for
+         libpthread[s] on DEC Unix
+
+1998-09-30 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * Makefile.in: new variable PTHREAD_DEFS for portability
+       * aidepost.c, citadel.c, citmail.c, mailinglist.c, msgform.c,
+         netmailer.c, netpoll.c, netproc.c, rcit.c, readlog.c, setup.c,
+         stats.c, userlist.c, whobbs.c: return type of main() is int
+       * citadel.c, commands.c, messages.c: use time_t properly
+       * citserver.c: include <limits.h>
+       * config.guess, config.sub, install-sh: new files
+       * configure.in: don't use gcc on Digital Unix
+
+Tue Sep 29 23:17:34 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * room_ops.c: modified usergoto() to look at the new data structures
+         for counting new messages and such.
+
+1998-09-29 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * user_ops.c: fix compiler warning and potential memory leak,
+         include sysdep.h
+       * configure.in, Makefile.in: only build the server if we find pthreads
+       * Makefile.in: realclean removes config.{cache,log,status}
+
+Tue Sep 29 13:20:14 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Removed code from some of the utilities which was still attempting
+         to access the old non-gdbm data store.
+       * housekeeping.c: rewrote check_ref_counts() to do a ForEachRoom()
+         traversal instead of a MAXROOMS loop.
+       * sysdep.c: set up a dummy CitContext record to be used during server
+         startup, during which time there is no real context.
+
+Mon Sep 28 23:51:51 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Implemented the function ForEachRoom() to handle all-rooms traversal
+         (this will work with both the old and new paradigms, because both
+         use a GDBM database with one room per record).  Migrated all room
+         list commands to use it.
+
+Mon Sep 28 22:05:35 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Implemented the function CtdlRoomAccess() to handle *all* of the
+         user-access-to-rooms functionality.  Migrated all room list commands
+         to use it.  Still need to migrate gotos.
+
+1998-09-28 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * configure.in, acconfig.h: new files; partially functional GNU
+         autoconf configure script. Run autoheader; autoconf; ./configure
+         --prefix=`pwd` to test.
+       * Makefile.tmpl: new file; this is what Makefile.in used to be. Used by
+         Configure.
+       * Makefile.in: modified to work with autoconf-style configure script
+       * Configure: modified to use Makefile.tmpl and generate autoconf-style
+         macros. Removed procfs detection. Pass -O2 to gcc, -O to other
+         compilers. Removed mknod/mkfifo detection; code should use mkfifo(3).
+       * citmail.c, msgform.c, netproc.c, routines.c, support.c, userlist.c,
+         whobbs.c: use HAVE_STRERROR macro rather than NO_STRERROR
+       * commands.c: use HAVE_TERMIOS_H macro rather than POSIX_TERMIO
+       * netproc.c: remove procfs stuff. simply attempt to kill the target
+         process with signal zero instead; this checks whether the process
+         exists.
+       * setup.c, useradmin.c: use HAVE_CURSES_H macro
+
+Sun Sep 27 23:41:29 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * BOTH the old and new generation systems are being written to at
+         this point.  Code that reads stuff is still using the old system.
+
+Sun Sep 27 16:10:49 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Changed all "generation" variables from char to long, in preparation
+         for removing MAXROOMS.  Generations for new rooms are now timestamps.
+       * Defined "struct visit" to hold user/room relationships.
+       * Removed some #define's from citadel.h that are no longer used.
+
+Wed Sep 23 13:41:49 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * More changes to support attachments.  They mostly work, but only
+         in fixed-format messages.
+
+Mon Sep 21 21:19:17 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * msgbase.c: began laying the groundwork to support attachments.
+         Purchased Rogaine(tm) in preparation for expected hair loss.
+
+1998-09-21 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * msgbase.c: include dynloader.h
+       * citadelapi.h: removed
+       * dynloader.h: prototype CtdlRegisterUserHook()
+
+Sun Sep 20 18:56:37 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Added a UserFunctionHook category to implement hooks which perform
+         operations on various users or usernames
+
+Fri Sep 18 21:14:41 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * citserver.c: removed cmd_extn() and related code
+
+1998-09-18 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * user_ops.c: include dynloader.h
+       * roomstats.{c,mk}: removed
+       * Configure, Makefile.in: autodependency-related fixes
+
+Thu Sep 17 22:55:29 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Various changes to allow "new messages" to work correctly with Mail
+
+Thu Sep 17 22:21:45 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * server.h, dynloader.c, citserver.c, user_ops.c: reduced the number
+         of hook types by inventing an EventType field to the Session hook.
+       * proxy.c: added pre-fetching
+
+1998-09-17 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * Makefile.in: add SERV_MODULES and PROXY_TARGETS to `cleaner'
+       * dynloader.[ch], serv_{chat,test}.[ch], sysdep.c: cleaned
+         up the dynamic loader interface as follows:
+         - all the symbol table stuff is gone.
+         - modules are loaded once at server startup and never unloaded.
+         - Added a new function CtdlRegisterProtoHook() to handle the stuff
+           that was being done with the symbol tables.
+         - Dynamic_Module_Init() now returns a pointer to a static struct
+           DLModule_Info; this structure itself has been modified to use char*
+           fields instead of fixed char arrays.
+       * roomstats.c: include <stdarg.h> not <stdargs.h> (is this file still
+         in use?)
+       * Configure, Makefile.in: added autodependency support
+
+Wed Sep 16 22:25:13 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * Implemented separate structs, lists, and functions for each type
+         of server-side hook available.
+
+1998-09-16 Nathan Bryant <bryant@cs.usm.maine.edu>
+       * ipc_c_tcp.c: Fixed up some #include/prototyping stuff, call memcpy()
+         instead of bcopy()
+       * hooks.h: removed
+       * sysdep.c, user_ops.c: removed reference to hooks.h
+
+Wed Sep 16 11:42:42 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
+       * ipc_c_tcp.c: Reversed any changes that have been made to this file,
+         because something was causing abominally slow response time.
+       * proxy.c: added.  This will eventually become a caching, pre-fetching
+         multiuser proxy server for the Citadel protocol.
+
 1998-09-15 Nathan Bryant <bryant@cs.usm.maine.edu>
        * Makefile.in: remove support.o from serv_chat.so, add -fPIC to compile
          flags for serv_chat.o