]> code.citadel.org Git - citadel.git/blobdiff - citadel/ChangeLog
* Properly handle all aliases specified in network/mail.aliases for incoming
[citadel.git] / citadel / ChangeLog
index 1ab0cbaa1d1c38549ede456876761da5e8366df3..e2728305c77d26285449eb0fac0151ff62af2c67 100644 (file)
@@ -1,4 +1,312 @@
 $Log$
+Revision 1.471  2000/02/26 18:30:40  ajc
+* Properly handle all aliases specified in network/mail.aliases for incoming
+  SMTP mail (uses the alias() function, so if we replace that function with
+  something that uses the same calling convention, it'll still work)
+
+Revision 1.470  2000/02/26 05:15:38  ajc
+* Fortified the message base and SMTP code so that misdirected bounce messages
+  end up in the Aide> room instead of getting dereferenced
+* Started writing a message reference count verifier ('fsck' for message base)
+
+Revision 1.469  2000/02/25 06:14:05  ajc
+* Modularized the RWHO (Read WHO is online) command, basically as a pilot
+  for modularizing all "non-API" functionality.
+
+Revision 1.468  2000/02/24 03:44:00  ajc
+* Implemented holdoff time (15 minutes) for SMTP send retry.
+* Implemented "try for 3 days and then give up" on SMTP send.
+
+Revision 1.467  2000/02/24 00:51:48  ajc
+* Client protocol synchronization check during exit from chat.
+  This closes Bug #15.
+
+Revision 1.466  2000/02/22 16:37:28  ajc
+* Minor tweaks to RFC822 output to keep brain-damanged MS Outlook from dying
+
+Revision 1.465  2000/02/22 04:17:56  ajc
+* Got bounce messages working (mostly ... testers, please beat this up!)
+* Changed 'FIX' comments to 'FIXME' (less conflict, plus vim highlights it!)
+
+Revision 1.464  2000/02/18 22:29:18  ajc
+* Coded up the "bounce" functions.  Still a coupla bugs.
+
+Revision 1.463  2000/02/18 05:10:50  ajc
+* Made the <.ASI> command a bit friendlier.
+* SMTP sender now pays attention to "smarthost" entries in the system's
+  Internet configuration, using them if one or more is present.
+
+Revision 1.462  2000/02/17 05:27:39  ajc
+* Got the "MAIL From:" command sending the correct data.  (unnnhhhhnnhhhh...)
+
+Revision 1.461  2000/02/16 22:06:26  ajc
+* Altered the display and conversion of RFC822 messages
+
+Revision 1.460  2000/02/16 03:43:28  ajc
+* Added the resolver library to the configure script
+
+Revision 1.459  2000/02/16 01:19:39  ajc
+* Vanquished the evil dn_expand() beast.  getmx() now seems to be working.
+
+Revision 1.458  2000/02/14 04:36:14  ajc
+* sysdep.c: added new event hook type EVT_TIMER.  Timer event hooks are called
+  once per minute by any worker thread.
+* msgbase.c: removed dependence on nested functions in CtdlOutputMsg() by
+  replacing them with an API call CtdlRedirectOutput() in sysdep.c, which
+  can temporarily redirect a session's output to an arbitrary file or socket.
+* serv_smtp.c: implemented the purging of messages in the queue for which all
+  deliveries have been completed.
+* serv_smtp.c: removed temporary 'QQQQ' server command and replaced it with
+  a timer event hook that runs the queue once per minute (this needs to be
+  made more robust)
+
+Revision 1.457  2000/02/08 21:00:47  ajc
+* Implemented the deprecated "LAST" command in POP3.  Some clients need it.
+* POP3 sessions now set the last-read pointer in Mail>.
+
+Revision 1.456  2000/02/07 05:15:00  ajc
+* Renamed CtdlLocalHost() to CtdlHostAlias() and worked it a little deeper into
+  the message routing logic.  Still needs some work on the gateway-domain
+  stuff.
+* Twiddled CtdlOutputMsg() a bit for 'all Internet' situations.  Still needs
+  some work to avoid printing dual headers when both Cit and RFC822 exist.
+
+Revision 1.455  2000/02/03 03:57:35  ajc
+* Formalized the 'Internet Configuration' logistics.  Added new API call
+  CtdlLocalHost() to detect aliases for the local host.  Used in SMTP listener.
+
+Revision 1.454  2000/01/31 02:13:05  ajc
+* <.A>ide <S>ystem configuration <I>nternet  in the client (unfinished)
+
+Revision 1.453  2000/01/26 02:41:27  ajc
+* SMTP delivery is working but still *very* rough.
+
+Revision 1.452  2000/01/25 04:45:50  ajc
+* Wrote enough of the SMTP sender to get Patriot drooling over it, but not
+  enough to complete the transmission of mail.
+
+Revision 1.451  2000/01/23 21:25:45  ajc
+* Temporary hack to ig_tcp_server() to listen on an arbitrary port if the
+  one specified is not bindable (for development only)
+* Added SM_DONT_BUMP_REF flag to CtdlSaveMsgPointerInRoom() to be used only
+  in very specific and special situations
+* Generate delivery instructions when outbound SMTP mail is created from
+  within Citadel (as opposed to being from the SMTP module)
+
+Revision 1.450  2000/01/23 05:22:41  ajc
+* Coded up some more of the SMTP-sender (still not done)
+
+Revision 1.449  2000/01/22 05:13:56  ajc
+* Added some more functionality to the string tokenizer
+
+Revision 1.448  2000/01/17 20:57:43  ajc
+* CR to CRLF hacks (lose, lose, lose)
+
+Revision 1.447  2000/01/17 18:30:27  ajc
+* Completed POP3 server.  All RFC1939 commands except APOP are implemented.
+
+Revision 1.446  2000/01/17 17:09:23  ajc
+* Implemented LIST and STAT commands in the pop3 server
+
+Revision 1.445  2000/01/17 05:38:14  ajc
+* citserver.c: cleanup hook functions are now run under the proper context,
+               even when initiated by the housekeeper thread
+* serv_pop3.c: establish a place to hold the message list
+
+Revision 1.444  2000/01/17 04:26:39  ajc
+* Modified CtdlOutputMsg() to handle output to arbitrary sockets or files.
+  This uses nested functions and may not be portable beyond GCC...
+
+Revision 1.443  2000/01/15 18:29:15  ajc
+* Added a generic (void *) parameter to the ForEachUser() and ForEachRoom()
+  callback mechanisms, to allow callers and callbacks to pass arbitrary data
+  between each other without requiring TSD variables.
+* room_ops.c: eliminated the need for 'FloorBeingSearched' TSD variable
+* internet_addressing.c: eliminated 'buffer1' and 'buffer2' TSD variables
+
+Revision 1.442  2000/01/15 04:31:44  ajc
+* Removed UI_DIALOG mode in setup.  Can't count on 'dialog' to be consistent.
+
+Revision 1.441  2000/01/15 04:07:17  ajc
+* Fixed the access rights on auto-created rooms (the same changes that were
+  made to version 5.62 in the stable tree)
+
+Revision 1.440  2000/01/13 03:32:36  ajc
+* techdoc/delivery-list.txt: added (syntax for delivery lists)
+* domain.*: added (will contain MX lookup code)
+* internet_addressing.c, logging.c: fixed some buffer overflow bugs
+
+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.
@@ -1364,3 +1672,4 @@ 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 
+