Fixed make_bcc_file () to use contents of From: in draft, if draft_from masquerade...
[mmh] / ChangeLog
index c97e57c..e7f3e1c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+2006-01-17  David Levine <levinedl@acm.org>
+
+       * uip/post.c, uip/spost.c: in make_bcc_file (), use same
+       logic as in finish_headers () to detect whether there is an
+       existing From: line in the draft.  If draft_from masquerade
+       flag is enabled, this allows the From: to be obeyed in the
+       Bcc, instead of the old behavior of always replacing it with
+       the signature.
+
+2006-01-17  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * sbr/fmt_scan.c: more robust multi-byte/column support for field
+       widths, restoring right justification feature
+
+2006-01-16  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * h/aliasbr.h, h/rcvmail.h, man/Makefile.in, man/slocal.man,
+       sbr/lock_file.c, uip/aliasbr.c, uip/dropsbr.c, uip/post.c,
+       uip/slocal.c, man/mh-mts.man: remove remnants of code for MMDF
+
+       * uip/scansbr.c: multiply buffer size by MB_CUR_MAX so multi-byte
+       chars fit
+
+2006-01-14  Josh Bressers <josh@bress.net>
+
+       * sbr/fmt_scan.c: Turn the PUTSF macro into a function capable of
+       handling multi column characters.
+
+2006-01-07  Josh Bressers <josh@bress.net>
+
+       * Remove sbr/strerror.c -- strerror(3) is defined in C89.
+
+2006-01-06  Josh Bressers <josh@bress.net>
+
+       * patch #3968: Move the add() function from its own file (add.c) and
+       into utils.c. There was also a duplicate add() function in mf.c which
+       has been removed.
+
+2006-01-02  Josh Bressers <josh@bress.net>
+
+       * Remove sbr/pwd.c file, moving the pwd() function into sbr/utils.c.
+
+2006-01-01  Josh Bressers <josh@bress.net>
+
+       * patch #3967: Create a mh_xrealloc function to prevent mistakes when
+       calling realloc.
+
+2006-01-01  Josh Bressers <josh@bress.net>
+
+       * patch #3966: Create a mh_xmalloc function to prevent mistakes when
+       calling malloc.
+
+2005-12-24  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * Bug #15285: Don't use $< in target rules in makefiles, as POSIX
+       says it's only defined in inference rules. (BSD make was expanding
+       $< to the empty string in the rule for building sbr/dtimep.c, which
+       causes lex to apparently hang because it's reading from stdin.)
+
+2005-12-24  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * Completely redo db library checking -- we now check for working
+       (include file, library) pairs rather than checking for headers and
+       libraries separately. We also now provide --with-ndbm=lib and
+       --with-ndbmheader=header options to configure to handle situations
+       where configure's autodetection fails.
+
+2005-12-21  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * Fix stupid accidental dependence on a bash quirk in previous
+       configure script change.
+
+2005-12-15  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * Improve checking for Berkeley db libraries: configure should now
+       find a suitable library on systems with new gdbm where
+       compatibility functions are in the gdbm_compat library, and on
+       systems with libdb4.
+
+2005-12-13  Michael Forrest <mef@computer.org>
+
+       * Fedora Bug #163760: sbr/context_read.c (context_read): Ensure that
+       the context is only read once.
+
+2005-12-12  Josh Bressers <josh@bress.net>
+
+       * uip/sendsbr.c (annoaux): Fix the call to annotate() fixing a bug
+       which prevented repl from properly annotating messages.
+
+2005-12-07  Jon Steinhart <nmh@fourwinds.com>
+
+       * Fixed a bug where anno -append put the headers in the wrong place
+       if applied to a message that didn't contain any headers.
+
+       * Added a special value of "all" to the -number option that causes
+       anno -delete to delete all matching components instead of just
+       the first one.
+
+       * Added new -preserve and -nopreserve options.  Using -preserve
+       retains the original last accessed and last modified times on
+       annotated messages.
+
+2005-12-05  Josh Bressers  <josh@bress.net>
+
+       * Fedora Bug #174983: configure.in: Fix the AC_PATH_PROG default when
+       vi isn't found during build.
+
+2005-11-19  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * bug #14977: sbr/context_read.c: special case an MHCONTEXT of
+       "/dev/null" and don't try to lock it.
+
+       * bug #9228, debian bug #146449: man/mh-profile.man: make it clearer
+       that lower case environment variables (and in particular mheditor)
+       are internal to nmh and not intended to be set by the user.
+
+2005-11-09  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * sbr/mf.c: fix buffer overrun with absurdly long addresses
+       (only causes crashes if scan is run with '-width 16536' or similar)
+
+       * bug #7917: sbr/context_foil.c, sbr/context_read.c,
+       sbr/context_save.c: mark 'no context' with NULL rather than
+       "/dev/null" so we don't inadvertently try to lock /dev/null (which
+       takes up to a minute in some locking configurations and makes post
+       very slow).
+
+       * patch #3913: uip/post.c: pass some globals into sm_init() so that
+       it uses SASL if necessary. (This bug was preventing Bcc'd emails
+       from being sent via SASL authenticated SMTP.)
+
+       * bug #9813: uip/rmf.c: don't crash if there's no Current-Folder
+       entry in the context file.
+
+2005-11-13  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * bug #7833: uip/Makefile.in: remove link to install-mh that caused
+       problems on some systems
+
+       * bug #739: Makefile.in: install target now depends on all to avoid
+       problem on case-insensitive file systems with the INSTALL file
+
+2005-11-10  Josh Bressers  <josh@bress.net>
+
+       * Fedora Bug #172838: configure.in: Fix the AC_PATH_PROG default when
+       sendmail isn't found during build.
+
+2005-11-09  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * h/aliasbr.h: fix a non-ANSI prototype.
+
+2005-11-08  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * Simon Burge: acconfig.h, configure.in, uip/rcvtty.c, uip/slocal.c:
+       fix to handle getutent() on NetBSD
+
+       * INSTALL, README, docs/README.about, man/nmh.man: update most
+       references to the web page and mailing list locations
+
+       * bug #10230: etc/Makefile.in, man/Makefile.in, uip/Makefile.in:
+       Michael De La Rue: prepend DESTDIR to install locations
+
+       * configure.in, */Makefile.in, mts/smtp/smtp.c: replace obsolete
+       autoconf macros
+
+2005-11-06  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+       * sbr/fmt_rfc2047.c, sbr/fmt_scan.c, h/prototypes.h: fix various
+       possible overruns of the buffers in fmt_scan() which would cause
+       crashes if scan was run with '-width 16536' or similar.
+
+       * uip/popsbr.c: fix compile error which only showed up if nmh
+       was configured with --enable-apop.
+
+       * Debian Bug# 245932, RedHat Bug# 172388: uip/mhparse.c: don't
+       crash when handling a multipart MIME message with an invalid
+       Content-Type header (file handle was being fclose()d twice).
+
+       * sbr/Makefile.in: adjust lex command to work on both old and
+       new versions of flex.
+
+       * configure.in: add an AC_PREREQ() so autoconf 2.13 gives a helpful
+       error message and the Debian autoconf-version-guessing wrapper
+       doesn't guess wrongly.
+
+2005-11-02  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * Debian Bug# 320069: Nick Rusnov: uip/popsbr.c: fail when
+       kpop connection attempted without KPOP support compiled in
+
+       * Debian Bug# 320090: Nick Rusnov: sbr/Makefile.in: fix for newer
+       version of flex and remove autogenerated file from cvs
+
+       * patch #1155: uip/flist.c: speed up flist by skipping stat on
+       files with numbers as names
+
+       * docs/Makefile.in: include new files in distribution
+
+2005-10-11  Bill Wohler  <wohler@newt.com>
+
+       * docs/FAQ: fold questions into MH FAQ and distribute that instead
+
+2005-10-05  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * Harald Geyer: h/mh.h, uip/replsbr.c: back out previous change
+       (fork/vfork) and replace with code that handles the issue directly
+
+2005-05-18  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * Debian Bug# 143485: Nick Rusnov: h/mh.h: use fork instead of
+       vfork on Linux
+
+       * Debian Bug# 261592: Harald Geyer: uip/mhlsbr.c, uip/replsbr.c:
+       test/report error writing to stdout
+
+       * mts/smtp/smtp.c, uip/popsbr.c: correct SASL include file locations
+
+       * docs/COMPLETION-BASH: bash completion definitions from Debian
+
+       * patch #2863: savannah@brisammon.fastmail.fm: sbr/folder_read.c:
+       fix a bug affecting AFS where nmh was setting the READONLY flag
+       for a folder even when you do have write access to the folder
+
+       * Carl Mummert: h/fmt_compile.h, man/mh-format.man,
+       sbr/fmt_compile.c, sbr/fmt_scan.c: add unquote() function for
+       removing quotes from RFC-2822 encoded headers
+
+2005-02-23  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * use iconv to convert RFC-2047 encoded headers to the
+       character set used by the current locale
+
+       * sbr/folder_read.c fix Debian bug #202667: crash when a
+       message's filename overflows an int when converted
+
+       * Updated config.guess and config.sub to the most recent
+       versions (from automake 1.9.5)
+
+2005-02-21  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * sbr/getpass.c fix bug where inc crashed on failing to reopen
+       the terminal
+
+2005-01-27  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * Added -proxy option to inc and msgchk. Based on old patch
+       from Michael Richardson.
+
+       * On systems where it is available, use nl_langinfo to get the
+       character set if MM_CHARSET is unset
+
+2005-01-21  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * sbr/check_charset.c US-ASCII is a subset of UTF-8 so can be
+       handled directly when UTF-8 is being used
+
+2004-12-17  Oliver Kiddle  <okiddle@yahoo.co.uk>
+
+       * uip/mhmisc.c Fix -part option to mhshow/mhlist/mhstore to
+       find sub-parts of the specified part
+
+2004-11-19  Jon Steinhart  <jon@fourwinds.com>
+
+       * h/prototypes.h, sbr/folder_addmsg.c, uip/mhstoresbr.c,
+       uip/rcvstore.c, uip/refile.c: Added mail directory argument to
+       folder_addmsg in order to make it possible to provide a path to
+       the ext_hook call that is mailpath-based.  A problem existed when
+       a folder was a symbolic link and the pwd call would return the
+       path relative to the filesystem, not to mailpath.  A new argument
+       was needed because there was otherwise no reasonable way to get
+       that path.
+
+2004-11-16  Jon Steinhart  <jon@fourwinds.com>
+
+       * sbr/folder_pack.c: Fixed problem where the refile hook was being
+       called after a message was renamed so that it wasn't around for
+       the hook.  The hook is now called before the message file is
+       renamed.
+
+       * sbr/folder_addmsg.c: Fixed wrong directory for hook when
+       refiling with -src option.
+
+2004-10-15  Jon Steinhart  <jon@fourwinds.com>
+
+       * uip/sortm.c: Fixed calling of external hooks.
+
+2004-10-12  Jon Steinhart  <jon@fourwinds.com>
+
+       * uip/inc.c: Fixed another weird bug caused by the static
+       mailpath being overwritten.
+
+       * uip/sendsbr.c: Fixed bug that caused anno to mangle headers.
+
+       * sbr/lock_file.c: Fixed strange bug that prevented a lock from
+       ever being obtained if getting it failed the first time.  The
+       problem was that the string of XXXXXX that is required by
+       mkstemp() was overwritten the first time through, and so all
+       subsequent times failed because mkstemp() failed.  The fix
+       reinitializes the tmp file string.
+
+       * uip/inc.c: Fixed bug in which the static maildir was overwritted
+       if a format string was read from the profile.
+
+       * sbr/folder_delmsgs.c: Fixed bug that was producing an incorrect
+       path for the external hook.
+
+2003-10-06  Glenn Burkhardt <glenn@aoi-industries.com>
+
+       * uip/slocal.c, configure.in: db configuration fix for Debian; yet
+         another location for ndbm.
+
+2003-09-30  Glenn Burkhardt <glenn@aoi-industries.com>
+
+       * Fix 'pick' so handling of options "-list" and "-seq" are
+       independent.
+       * Fix 'inc' realloc error when bringing in more than 100 msgs
+       to empty folder.
+       * Patches submitted by Nick Rusnov from Debian archive applied:
+
+       Debian Bug#
+          136976 - Handle binary content messages
+          143427 - mh-format.man typo
+          144098 - 'spost; should have same behavior as 'post'
+                   w.r.t. mts.conf masquerade line
+          149745 - slocal ignores 'N' result of previous command
+          152728 - increase SMTP timeouts to conform to RFC 1123
+                   The timeouts suggested by the RFC seem long
+                   to me - but the RFC is still listed as active.
+          181867 - typo for nmh.man
+       
+2003-08-10  Jeffrey C Honig  <jch@honig.net>
+
+       * Fix problem where parsing of address/date fields in fmt_compile
+       is optimized to the first instance.  The first instance may be in
+       contitional code which will result in cached data to
+       be used.  Instead, convert c_flags to a flags field from a boolean
+       and parse on the first use.
+       * Remove some unused flag bits.
+
+Fri Jul 01 22:02:00 2003 Glenn Burkhardt <glenn@aoi-industries.com>
+
+       * Applied fixes for configuration problems with Solaris and
+         systems with gdbm instead of db1 (includes bug #2024)
+       * Fixes for bugs 
+         #578  - repl leaks umask 
+         #1393 - sortm core dumps 
+         #1650 - msh leaks file descriptors
+         #1730 - Double free() in mhfree.c:free_encoding()
+         #3356 - In-Reply-To header in default replcomps should be 
+                 RFC2822 compliant 
+       * Revised man page for mh-format (bug #2031)
+       * New replcomps, etc, with Fcc: +outbox in default versions
+       
+Sat Mar 17 03:18:15 2001 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Ken Hornstein's configure.in Cyrus SASL checks were doing 
+       `x"$with_cyrus_sasl" != "no"' instead of `... != x"no"'.
+
+Tue Mar 06 21:04:27 2001 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Found some historical information about MH in RFC 808.
+       Supplemented it with info from Jerry Peek's MH book and added it
+       to docs/README.about.
+
+Tue Feb 6 20:35:40 2001 Shantonu Sen <ssen@mit.edu>
+
+       * sbr/dtime.c Use the same Y2K correction code as dtimep.lex
+
+       * sbr/dtimep.lex Restrict the parser to accept either
+       a numerical timezone offset, or a symbolic one (e.g. EST),
+       but not both (Since "2000 -400 EDT" might cause a double
+       subtraction of 60 minutes if both are parsed. One should be
+       enough).
+
+Mon Feb 05 20:22:54 2001 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * -L isn't sufficient for specifying the path of the Cyrus SASL
+       shared library.  That'll allow us to link successfully, but on
+       many/most OSes that won't allow us to find libsasl at runtime.  On
+       Solaris, we need to specify the library path with -R as well (or
+       else the user will have to use the $LD_LIBRARY_PATH kludge, which
+       is considered harmful).  This fix should be extended to other OSes
+       as well.
+
+       * Print whether we have SASL support in the "nmh configuration"
+       summary configure prints out.
+
+       * Say in README.developers to use `\date' in case anyone is like
+       me and has `date' aliased in their shell to use a nonstandard (but
+       subjectively more readable) format.
+
+Thu Jan 25 21:15:52 2001 Shantonu Sen <ssen@mit.edu>
+
+       * man/mh-chart.man has updated synposes of
+       all nmh commands.
+
+Tue Jan 23 20:26:15 2001 Shantonu Sen <ssen@mit.edu>
+
+       * etc/digestcomps tried to force dates into a
+       19xx when it's not necessary.
+       
+Fri Jan 19 21:22:08 2001 Shantonu Sen <ssen@mit.edu>
+
+       * First round of manpage updates finished. They
+       are standardized on -man macros, with minimal
+       roff mark-up.
+
+       * man/tmac.h.in is no longer needed, since the
+       manpages do not depend on them anymore. Note:
+       strict "man" programs that didn't allow ".so"
+       sourcing outside the man tree will now format
+       the man pages correctly.
+
+       * man/vmh.1 is no longer built, since uip/vmh isn't
+       
+Tue Jan 9 6:01:22 2001 Shantonu Sen <ssen@mit.edu>
+
+       * Finished manpages ali-prev
+
+       * Removed deprecated files from the repository.
+       Specifically, those rooted in zotnet/ and mts/sendmail
+       mts/mmdf. "cvs update -dP" will give a pruned directory
+       structure.
+
+       * Updated docs/Makefile.in to include README.manpages, and
+       uip/Makefile.in to include popi.c (which isn't being built,
+       though). This allows "make nmhdist" to create an archive that
+       is file-for-file identical to the current cvs repository.
+
+Sun Dec 31 20:48:50 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Create docs/README.manpages, which details
+       the formatting rules I've been using.
+
+       * Finished ali-inc.
+       
+Sat Dec 30 9:50:13 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Created a new file "DATE" to hold the date
+       of the most recent nmh release. This date will be
+       used in the manpages.
+
+       * Updated docs/README.developers to add the step
+       of updating DATE. Also, updated configure to
+       read in the contents of the file as the variable
+       $DATE.
+
+       * Started work on updating man pages, with only
+       ali finished so far. Changes: 1) no dependence
+       on an external macro file, 2) uses only
+       -man macros (although I may be mistaken in this),
+       3) syntax in the SYNOPSIS is a little more
+       in line with standard UNIX documentation, such as
+       bold flags and italicized parameters.
+
+Sun Dec 24 10:06:30 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Updated INSTALL with information about the
+       --with-locking option.
+
+       * Fixed the Hesiod tests in configure.in. In
+       systems where res_send was in -lresolv, this
+       information was not being communicated to the
+       HESIOD_LIBS var. Now, if res_send is not found
+       in the default libraries, it's assumed to be
+       in -lresolv, and thus -lresolv is appended to
+       HESIOD_LIBS, which will need that to avoid
+       undefined symbols problems.
+
+       * Fixed the Kerberos tests in configure.in. New
+       versions of Kerberos 5 have renamed -lcrypto
+       to -lk5crypto (circa krb5 1.1 or thereabouts). The
+       new test tries to determine if -lk5crypto exists. If so,
+       this is a new krb5 system. If not, test for -lcrypto
+       and the rest of old krb5. If that fails, look
+       for a genuine krb4 installation.
+       
+Fri Dec 22 22:08:51 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * -apop and -noapop were not documented in msgchk.man.
+       -snoop was documented but didn't appear in the usage SYNOPSIS.
+
+Fri Dec 22 23:42:16 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Made a new ./configure option called
+       "--with-locking" that allows the file
+       locking mechanism to be chosen there instead of
+       requiring a manual edit of config.h.
+
+       * If the option is not explicitly set, or an
+       invalid option is specified, "dot" locking is
+       chosen. Valid options are "dot", "fcntl",
+       "flock", and "lockf". We need a way to tell
+       the user that these are the valid options, and
+       change the flag "--with-locking" if it's not
+       descriptive enough.
+
+Fri Dec 22 19:21:29 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Remove the lex-specific memory hints at the
+       beginning of sbr/dtimep.lex. We've already
+       committed to supporting flex only, since
+       lex does not easily allow us to parse a single
+       string, as well as other problems documented
+       below and on nmh-workers.
+
+       * Added a switch statement to configure.in to
+       test for Mac OS X. If this is the case, LDFLAGS
+       should not contain "-s" since the linker rejects
+       the flag.
+
+       * Updated MACHINES to include Mac OS X Public Beta,
+       as well as Linux 2.4 running glibc 2.2.
+
+Wed Dec 20 16:00:46 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Marked deprecated directories in docs/README.developers
+       as deprecated, with pointers to the new code location.
+       Eventually these deprecated directories should go away.
+
+Tue Dec 19 19:16:37 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * -apop and -noapop were not documented in inc.man.  -snoop was
+       documented but didn't appear in the usage SYNOPSIS.
+
+Thu Dec 14 14:32:09 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Updated config.guess and config.sub to the most recent
+       versions on ftp://ftp.gnu.org/pub/gnu/config, dated
+       12-07-00. This should prevent configure from failing
+       on newer operating systems because config.{guess,sub}
+       couldn't correctly identify them.
+
+Thu Dec 14 1:30:44 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Fixed the circular dependency created when I moved
+       zotnet/mts to mts/generic and merged them into libmts.
+       mts/generic/client.c and mts/generic/mts.c are now in sbr/
+       (and thus in libmh), which makes libmh self-contained and
+       not depending on an external archive.
+
+       * All include statements now look for mts.h in h/. The
+       Makefiles and configure script have been modified so that
+       mts/generic is no longer built.
+
+Mon Dec 11 22:08:07 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * When Shantonu made the new libmts.a, he swapped $(MTSLIB) and
+       libmh.a in sbr/Makefile.in so that libmh.a comes first, but this
+       causes the build to fail on Solaris, because libmts.a has to get
+       ruserpass() out of libmh.a.  Swapping them back to the way Ken
+       Hornstein's patch (which I applied on Jul 20) put them, with
+       libmh.a correctly coming second.  If there are times when libmts.a
+       needs to come second, then it would appear there's a circular
+       dependency and someone (Shantonu?) did an mts merge incorrectly.
+
+Fri Sep 8 01:36:23 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Took out bad time textual time zones like BST and JST.
+       I found them online somewhere, but am not sure if they're
+       correct.        
+       
+Fri Sep 8 00:36:48 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Moved zotnet/mts to mts/generic. This code reorganization
+       makes the entire zotnet tree deprecated -- bboards is unneeded,
+       mf was was moved to sbr, tws was rewritten and moved to sbr, and
+       now finally mts.
+
+       * Created a new static library called libmts.a used during
+       compilation which includes the generic mts code and the
+       smtp/sendmail code. This supercedes the functionality of the
+       old libsmtp.a and the remains of libzot.a.
+
+       * Updated header includes to reference the new location of mts.h
+       in mts/generic/mts.h. Also, update the configure and top-level
+       Makefile not to descend into zotnet. Also, they don't descend
+       into mts/mmdf and mts/sendmail (the sendmail code has been
+       merged into the smtp code).
+
+       * Added #include <h/nmh.h> to h/md5.h, since my compile was
+       complaining about implicitly-declared memcpy and memset, which
+       appear to be in strings.h. In any event, nmh.h should take care
+       of it for us.
+
+       * When doing a "make nmhdist", notice that the generated
+       snapshot does not include zotnet of the mts directories as noted
+       above. Since they are no longer compiled, and I don't see any
+       obvious code path to get to them, end-users should probably
+       not need them. If you think otherwise, turn Makefile generation
+       back on in configure.in and turn on recursion into those dirs
+       in the appropriate Makefile.in
+
+Wed Sep 6 22:40:03 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Tracked down the problem in the new dtimep where time
+       zones were being radically misreported. It was because the
+       parser knew about military time zones (such as M or E) but in
+       some cases did not know about the textual representation of
+       some zones (like MET). When it encountered one of these, the
+       date parser misread MET as the military time zone T (well, first
+       zone M, then E, and finally T). I took military zones out, and
+       things seem much better. Also, the default behavior of parsing
+       time zones appears to default to GMT in the absence of better
+       info, which is less bogus than assuming the mail came from the
+       current time zone, which was the behavior in 1.04.
+
+Thu Aug 10 13:22:13 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Decided that limiting the message number columns to 3 on my
+       scan.MMDDYY and scan.YYYYMMDD (to try to regain space taken by
+       extra date info) was ill-conceived.  It's not that tough to get
+       past 999 messages, though I imagine it's rather rare to exceed
+       9999.  Changed these to 4.  Also put the "replied / encrypted"
+       column back in YYYYMMDD -- I've never seen it show anything but a
+       space, but that space is useful if you use scan, grep, and awk
+       (with the default field separator) to grab message numbers (I know
+       -- pick should really be used for these purposes...).
+
+Mon Aug  7 20:11:09 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Modify umask set by mhshow to enable user execute bit, so that
+       viewers that create temporary directories (e.g., lynx) will be
+       able to access them.
+
+Thu Aug 03 17:14:08 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * TODO: Allow multiple simultaneous differing contexts, probably
+       each tied to a parent (terminal) process.
+
+Tue Aug  1 10:48:05 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
+
+       * Makefile install rules should not look for generated files in
+       the source tree -- this will happen to work when configuring and
+       building inside the source tree but will fail when using an
+       external build tree.  Fixed etc/Makefile.in.
+
+Mon Jul 24 16:20:45 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * When Shantonu wrote the new, more portable dtimep.lex, he left
+       out the #ifdef DSTXXX stuff for some reason.  Not a good idea, as
+       that code is required for proper printing of numeric-offset
+       timezones that have daylight saving time.  Without that code,
+       -0700 during DST gets printed as MST instead of PDT.
+
+       * Renamed DSTXXX as ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST and
+       added an explanatory comment by its #definition.
+
+       * Updated README.developers with the fact that zotnet/tws is going away.
+
+Thu Jul 20 20:30:52 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Moved Kimmo's new "--with-hash-backup" to be output with the
+       rest of the --with options in the configure --help output.  Also,
+       people did not preserve my alphabetization of the --with options
+       when they added new ones.  Re-alphabetized.
+
+       * One more pass at README.developers now that it's clear that my
+       previously-suggested one-line autoconf-file commit can cause
+       unnecessary local makes and an out-of-sync stamp-h.in file, but
+       would not cause problems for other people using the CVS files.
+
+       * Ken Hornstein's SASL patch was not integrated properly with
+       Ruud's new merged mts/sendmail code.  Kimmo has since fixed nmh so
+       it compiles, but according to Ken, the SASL stuff still does not
+       work.  Integrating a patch from him for this.
+
+       * Last pass at README.developers -- Kimmo's 5-step commit was
+       overkill.  You only need 3 steps, since configure.in is the only
+       autoconf file with the RCS $Id keyword.
+
+       * Applied Kurt J. Lidl <lidl@eng.us.uu.net>'s $MAILHOST patch:
+
+           I have a small patch that would be nice to be included --
+           basically, it allows the usage of the "MAILHOST" environment
+           variable, without having to have HESIOD turned on.  I need
+           this functionality for my environment, where we have identical
+           /usr/local on all my machines (so I cannot just hardcode into
+           the mts.conf file), and I have multiple POP mail servers for
+           my users.
+
+       Modified inc.man to reflect that along with "pophost:" and -host, 
+       $MAILHOST can now activate POP mail inclusion as well.
+
+       * Fixed warnings from diff on first-time install of nmh.  Also
+       added 'echo's clarifying the etc file installation activities.
+
+Tue Jul 18 19:36:59 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
+
+       * Added the answer to Dan's question in README.developers.
+
+Mon Jul 17 19:10:36 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Clarified and made some corrections to Kimmo's README.developers
+       changes (BTW, if anyone can explain why the RCS Ids are able to cause
+       problems with the dependencies, please fill in the explanation --
+       I never encountered a problem with the old single-commit method).
+
+Sat Jul 15 23:13:49 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
+
+       * Add configure option --with-hash-backup so the backup prefix can
+       be easily changed from "," to "#".
+
+       * Simplified sbr/Makefile.in so that it works with any make.
+
+       * Use mkstemp in sbr/lock_file.c.
+
+       * Commits of autoconf-related files apparently can't all be done
+       in one shot due to RCS Ids changing when committing -- updated
+       README.developers.
+
+Tue Jul 11 14:18:01 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Clarified post.man and send.man for those not completely up on
+       SASL terminology.  "SASL encryption layers are not supported for
+       SMTP" means that encryption is supported for the authentication
+       but not for the subsequent data stream.
+
+Sat Jul  8 01:36:19 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
+
+       * Applied Ken Hornstein <kenh@cmf.nrl.navy.mil>'s patches
+       implementing SASL support for POP3 and SMTP.  If nmh is compiled
+       with SASL support, using the -sasl switch on the inc, msgchk,
+       post, and send commands will enable authentication encryption for
+       SMTP, and both authentication and data stream encryption for POP3.
+
+Sat Jun 10 18:37:59 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Merged mts/sendmail functionality into mts/smtp; switching between
+       smtp and sendmail delivery method is now controlled by mts.conf.
+
+       * If tsort cannot deal with loops, in addition to defining tsort as
+       cat, also define lorder as echo.
+       
+       * Removed uip/popi.c from list of sources.
+
+Thu Jun 08 19:36:57 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * New dtimep.lex didn't parse day names properly.  Fixed.  Also
+       clarified ambiguous comments preceding day_map[] array (from old
+       dtimep.lex) that probably led to the erroneous cp++ being added.
+
+Wed Jun  7 20:52:33 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Added one more mkstemp invocation to uip/spost.c (which was in a
+       #if 0 block).
+
+       * Applied patch from Peter Maydell to clean up permissions handling
+       and error handling in uip/inc.c.
+
+Mon Jun  5 22:10:07 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Use cat instead of tsort if tsort cannot deal with loops in its
+       input (which is the case for tsort from GNU textutils).
+
+Mon Jun  5 21:14:36 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * If lockfile is present, and its dotlockfile program is setgid,
+       inc does not need to be setgid.
+
+Sun Jun  4 21:35:40 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Added autoconf test for Miquel van Smoorenburg's liblockfile
+       library, as found on Debian systems.
+
+       * Added liblockfile support to sbr/lock_file.c.
+       
+Wed May 31 7:19:30 2000 Shantonu Sen <ssen@mit.edu>
+       
+       * Fixed up dtimep.lex a bit. Added back memory options for AIX to
+       increase available memory.  Took out %option noyywrap, which
+       wasn't understood by AT&T lex, as well as the -i
+       case-insensitivity flag.
+
+Wed May 31 07:40:45 2000 Doug Morris <doug@mhost.com>
+
+       * Added a lint target to the Makefiles and a check in autoconf
+       to determine whether lint or lclint exists on the system. 
+
+Fri May 30 19:21:48 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * etc/Makefile.in was incorrectly installing mts.conf.in and
+       sendfiles.in -- fixed.  Generated sendfiles script was not a
+       dependency of the `all' target, and was incorrectly included in
+       the distribution.  Changed the suffix for the backed-up previous
+       versions of the etc files from the ambiguous .old to .prev.  Added
+       call to diff -- only keep the .prev files around if different from
+       the newly-installed versions (intentionally didn't redirect output
+       to /dev/null so you'll notice when your changed versions are
+       getting moved aside).
+
+       * INSTALL never documented the etc/*.old thing.  Documented the
+       new etc/*.prev thing (including a note to watch for diff output).
+
+       * Applied Alec Wolman <wolman@cs.washington.edu>'s dropsbr.c patch:
+
+           In the map_write routine, a call is made to map_open and this
+           call is supposed to set the "clear" variable to 0 or 1,
+           depending on whether the map file is empty or not.  In
+           mh6.8.3, this worked because map_open would set "clear" by
+           calling the mbx_Xopen routine.  In nmh, the code for mbx_Xopen
+           was merged into mbx_open, but the interface for mbx_open
+           doesn't support the clear variable, so that functionality was
+           lost.  The map_open interface still contains "int *clear" in
+           the prototype, but never sets it.
+
+           My patch eliminates "clear" from the map_open interface (I
+           checked to make sure that map_write is the only client of
+           map_open).  Furthermore, my patch also sets the "clear"
+           variable properly at the beginning of map_write by calling
+           fstat().  This eliminates the bug in that the value of "clear"
+           being used later in the routine was just stack garbage.
+
+           Having a bad value of clear causes this next bug to be
+           triggered: The fp file pointer was being opened with fdopen,
+           but in two of the three switch cases it wasn't being closed.
+           In certain cases, this was causing packf to run out of file
+           descriptors if you attempted to pack a large folder.
+
+Mon May 29 7:48:15 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Moved the date parsing routines from zotnet/tws to sbr/ (and
+       tws.h to h/). Updated all source files to reflect to new location
+       of tws.h.
+
+       * Rewrote dparsetime (in dtimep.lex -> dtimep.c) to replace the
+       old zotnet/tws/dtimep.c, dtimep.lex, lexstring.c, lexedit.c, and
+       dtimep.c-lexed. It should now work with flex (although untested
+       with lex), and requires no sed-ing. For now, I have the lexed
+       version in the distribution, so that end-users don't need to worry
+       about running it through flex/lex. I have not added back support
+       for guessing the time zone when it's not specified.
+       
+Sun May 28 17:44:15 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Added autoconf check for getutent().
+
+       * Changed uip/rcvtty.c and uip/slocal.c to use getutent() and
+       friends.  Since I can only check on Linux, please check if
+       this works on other systems.
+
+Sun May 28 14:58:49 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Applied patch from Peter Maydell to uip/scansbr.c for more
+       checks for write failures.
+
+       * Unlink temporary file properly in uip/rcvtty.c.
+
+       * Moved viamail from bindir to libdir.
+
+       * Changed sendfiles into sendfiles.in, so that path to viamail
+       is patched in.
+
+       * Added gzip support to sendfiles.
+
+       * Added References header to replcomps and replgroupcomps.
+
+Sun May 28 14:39:31 CEST 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Fixed m_getfld bug which caused segmentation faults when
+       incorporating messages which ended in multiple linefeeds crossing
+       a buffer boundary.
+
+Fri May 26 13:21:59 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * msh has been unable to show MIME messages ever since 1.0.  Alec
+       Wolman <wolman@cs.washington.edu> tracked down the problem to the
+       -show flag being passed to mhshow.  mhshow is equivalent to the
+       old mhn -show, so we don't need the -show anymore.  Removed it.
+
+Fri May 12 02:51:21 2000 Shantonu Sen <ssen@mit.edu>
+
+       * zotnet/bboards is not longer built by default. Goal is to move
+       the assorted functions in zotnet into sbr or some more logical
+       place.
+
+       * Moved zotnet/mf to sbr, and changed mf.h references accordingly,
+       as well as Makefiles.
+       
+Thu May 11 02:21:34 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Simplified sbr/Makefile.in so that both SRCS and OBJS aren't
+       seperately and redundantly defined, but so that OBJS is a
+       pattern-substituted version of SRCS with suffix .c -> .o. This
+       should make maintainability easier.
+
+       * Added section to MACHINES indicating what platforms nmh is known
+       to compile and work on, just to give users peace of mind, or
+       something. This is by no means complete or exhaustive, so add
+       whatever you know works.
+       
+Tue May 09 20:38:04 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Alphabetized Shantonu's $pop_kinds output on configure's "pop is
+       enabled" line.  If POP3 is the only kind of POP enabled, say so,
+       rather than just saying "yes" (which is ambiguous).
+
+       * Fixed four warnings in Shantonu's new getpass.c.  Needed to
+       #include <stdlib.h> for calloc(), <unistd.h> for ttyname(), and
+       "h/mh.h" for adios().  Also changed ch from char to int to get rid
+       of "comparison is always 1 due to limited range of data type" on EOF.
+
+       * Added steps to README.developers saying to change the version
+       number to X.Y.Z+dev.  Did a little rearranging and changed the FTP
+       dir from /home/ftp to /var/ftp to reflect Doug's new machine.
+
+       * Changed configure.in to use gcc -Wall even without
+       --enable-debug, to prevent developers compiling optimized from
+       introducing warnings, and to give end-users a warm, fuzzy feeling
+       as they (hopefully) see no warnings come out (except perhaps on
+       the lex output file) even with -Wall.
+
+       * Renamed getpass() to nmh_getpass() since the prototype for
+       getpass() varies from OS to OS, and we want to _always_ use our
+       version of the function.  Fixed all the callers to use
+       nmh_getpass() and added it to prototypes.h.  Semi-arbitrarily
+       upped MAX_PASSWORD_LEN from 128 to 256.  buf was being calloc()'d
+       and the memory leaked -- should have just been declared as static
+       char array.  Prepended "Portions of this code are" to the
+       copyright message, as this version has been changed significantly
+       from the BSD version.
+
+       * Added "nmh-local functions to use in preference to OS versions"
+       section to README.developers (currently just says to use
+       nmh_getpass() instead of system getpass()).
+
+       * Prepended "Portions of this code are" to the copyright message
+       in ruserpass.c also.
+
+       * Added mts.conf.5 page per Neil W Rickert <rickert+nmh@cs.niu.edu>'s
+       report:
+       
+           This happens on solaris:
+
+                    % man mts.conf
+                    windex entry incorrect:  mts.conf(5) not found.
+                    No manual entry for mts.conf.
+
+           It is fixed by
+
+                    % echo ".so man5/mh-tailor.5" > mts.conf.5
+
+           done in the man5 directory.  We need to add 'mts.conf.5' as a
+           reference sourcing mh-tailor.5.
+       
+Mon May 08 23:51:55 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Doug informed me that the way I had restored the "lost" version
+       histories was wrong, because `cvs checkout's of old versions of
+       nmh wouldn't work properly.  It occurs to me that this could be
+       fixed by simply deleting those tags in the new-location *,v files,
+       but oh well.  I'm putting everything back to the way Doug
+       originally had it.  To get the old version history for a file that
+       used to be in the top directory, you'll need to "blindly" do a
+       `cvs log' there (even though you won't have a local copy of the
+       file in that directory).  `cvs diff' will no longer be able to
+       diff pre-move versions vs. post-move versions -- you'll have to do
+       a lot of manual gyrations with `cvs checkout' and then use `diff'.
+
+       * I had alphabetized the --configure options in the --help output
+       awhile back, but Shantonu added --enable-apop just under
+       --enable-pop.  Put it in alphabetical order and clarified what
+       --enable-apop does vs. --enable-pop and --with-krb4.  Also changed
+       --with-mts help line from "mail transport agent" to "mail
+       transport agent/service" so the 's' in "mts" doesn't seem to come
+       out of nowhere.
+
+       * Added two steps to "releasing nmh" in README.developers.  After
+       making the tarball, it's a good idea to diff the tree vs. the CVS
+       tree to make sure no files got left out, and then to chown the
+       files so that they're owned by root, preventing a Trojaning attack
+       by a malicious remote user with a UID matching yours.
+
+       * Changed DIFFERENCES to say that RPOP is not currently supported
+       rather than implying it by saying that APOP, KPOP, and POP[3] are.
+
+Sun May 07 18:16:43 2000 Shantonu Sen <ssen@mit.edu>
+
+       * Imported NetBSD version of getpass() and made extensive
+       revisions for compatibility with programs that pipe the password
+       to stdin, such as exmh.
+
+       * Removed tests for system ruserpass() which sometimes gave
+       phantom positive results. Also, bext to use internal functions if
+       we ever want to change .netrc format to something else, or access
+       other files.
+
+Sat May 06 08:28:09 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Restored lost version histories for those moved files by doing a
+       manual `mv' in the CVSROOT on mhost.  CVS badly needs a `cvs mv'
+       command so that you can move files (without having physical access
+       to the CVSROOT) without losing versioning.  Put MACHINES back at
+       the top level as it needs to be read before building.  Fixed DIST
+       variable in {.,docs}/Makefile.in to reflect that and to add
+       missing entry for "INSTALL" file.
+
+Sat May 06 13:13:07 2000 Doug Morris <doug@mhost.com>
+
+       * Re-cleaned up nmh documentation (by moving things to docs
+       subdir) and modified Makefile & configure.in to handle the change.
+
+Mon Apr 17 21:28:40 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Scott Blachowicz pointed out that the configure --help output
+       for --enable-masquerade was misleading.  Clarified.
+       
+Mon Apr 17 19:01:00 2000 Shantonu Sen <ssen@mit.edu>
+
+       * APOP support can be compiled in to inc and msgchk using
+       --enable-apop.
+
+       * To access an APOP host, specify -apop on the command line
+       along with any -host or -user option.
+
+Fri Apr 14 23:10:44 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Upped the version number to 1.0.4+dev until the next nmh release.
+
+       * Added a "releasing nmh" section to README.developers, while the
+       process was fresh in my mind.
+       
+Fri Apr 14 18:21:34 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Added new files README.developers, ChangeLog_MH-3_to_MH-6.6, and
+       ChangeLog_MH-6.7.0_to_MH-6.8.4.html to DIST target in Makefile.in.
+       
+       * Released nmh-1.0.4.
+
+Tue Apr 11 21:37:03 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Applied Brian Campbell <bacam@tardis.ed.ac.uk>'s mhn.defaults.sh
+       patch:
+
+           It appears that there shouldn't be quotes around the %s in the
+           iso-8859-1 charset entry; xterm passes the remaining arguments
+           to the program, quoting them means that xterm thinks they're
+           part of the program's name.
+
+       This %s isn't the same as the "Insert content subtype" one from
+       mhshow-show-* -- it doesn't come from MIME headers and is safe not
+       to quote.
+
+Sun Apr 09 13:03:59 2000 Doug Morris <doug@mhost.com>
+
+       * added check in fmt_compile() to handle a single-character
+       format string. fmt_compile() depends on having an array of
+       format characters with an empty item at the end. A
+       single-character format would cause programs using this
+       function to segfault because the algorithm used to decide on
+       the length of the array mistakenly created a single-item array
+       when the format string was one character. This eventually
+       caused problems when the program attempted to test item+1
+       in the array.
+
+Thu Apr 06 21:53:50 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Richard Coleman threw out a lot of old MH-specific files in nmh.
+       Much of the stuff, indeed, is not worth saving, but there are
+       nuggets that are very worthwhile, and should probably be added
+       back in.  Most important, IMHO, are the MH change logs, as they
+       can help answer questions like "Why is this code like this?" or
+       "How long has this been broken?" or "What was this ever used for?"
+
+       I've added a new file to the nmh tree called
+       ChangeLog_MH-3_to_MH-6.6.  It's cobbled together from the
+       mh-6.8.4/papers/mh*/MHCHANGES files.  I've re-ordered the entries
+       to go from newest at the top to oldest at the bottom to match the
+       ChangeLog convention.  Unfortunately there are no change logs for
+       versions of MH prior to 3 in the MH tar files available at
+       <ftp://ftp.ics.uci.edu/pub/mh>.  Also, it appears to me that there
+       are MH-6.6 changes that aren't documented in the logs.
+
+       I've also added ChangeLog_MH-6.7.0_to_MH-6.8.4.html.  This is
+       based on mh-6.8.4/papers/changes/mh-changes.ms.  The nroff format
+       and its "catman"-type output are a pain to deal with, but I was
+       loath to throw away the formatting, so I converted the file to
+       HTML.  The only actual markup in the body are the "<B>" and "<U>"
+       tags, and "&lt;" and "&gt;" instead of '<' and '>', so it's quite
+       doable to view the file in plain ASCII mode as well.  Note that
+       some of the changes this file documents as having been made in
+       MH-6.8.4 may not be present in nmh -- Richard started with 6.8.3
+       and later put in certain 6.8.4 stuff.
+       
+Wed Apr 05 21:09:28 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Applied Eric Schnoebelen <eric@cirr.com>'s mhshowsbr.c patch
+       fixing apparent bugs in Dan Winship's new security quoting code:
+       
+            Since upgrading, I've been getting the following errors
+            while attempting to process some MIME messages:
+
+                (1) Syntax error: Unterminated quoted string
+                    exit 2
+       
+            and:
+
+                (2) line 1/10 (END)Segmentation fault (core dumped)
+
+           (2) appears to be due to the testing of an unset pointer in
+           mhshowsbr.c:show_multi_aux().  (1) appears to be caused by
+           mis-quoting a filename being handed to the shell in
+           mhshowsbr.c:show_content_aux().
+
+           Resolving the pointer reference issue in
+           mhshowsbr.c:show_multi_aux() turned up a similar mis-quoting
+           problem in the routine.
+
+Tue Mar 28 16:17:39 2000 Doug Morris <doug@mhost.com>
+
+       * Applied Todd.Miller@courtesan.com's patch to dropsbr.c to
+       prevent core dumping on packf. Here's the note from his message:
+
+           Since sizeof(buffer) == sizeof(tmpbuffer) packf will dump
+           core on a file w/o a From line with a line >= BUFSIZ.
+           I noticed this because I had a junk file in my mail
+           spool somehow.
+
+Fri Mar 17 11:59:33 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * wesley.craig@umich.edu did not document his previous KPOP patch,
+       so I did so, and asked him to check what I wrote.  Unfortunately
+       he didn't notice my misunderstanding of his patch.  I wrote that
+       if you #define POPSERVICE "kpop", inc and msgchk will use KPOP
+       exclusively, but if you leave it as "pop3", you can use Wesley's
+       new -kpop switch on a given invocation.  Instead, however, -kpop
+       turned out to be necessary on every invocation, and a KPOP user
+       complained.  Applied Wesley's new patch, which makes things work
+       like I thought his original patch did.  After that, did one more
+       clarifying pass to the documentation in inc.man and msgchk.man.
+
+Wed Mar 15 18:45:45 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * When I fixed the long-standing makedir() bugs in January, I had
+       the code call strtoul(..., 0), which I believed to be safe as all
+       modes specified as ASCII constants in the nmh code started with a
+       leading zero (signifying octal), which I did as it would work if
+       internal constants were ever changed to hex.  Unfortunately I was
+       unaware of the "Folder-Protect:" .mh_profile entry, which
+       mh-profile.man documents as an octal-only constant, with no
+       leading zero required.  I've changed the strtoul() call to an
+       atooi() call and removed the misleading leading zeroes on the
+       ASCII octal constants in the code and man pages.  Also changed the
+       "Folder-Protect:" example in the man page to something more
+       interesting than a duplication of the default.
+
+       * When I added my --enable-masquerade option, you'll note that I
+       didn't make it --enable-nmh-masquerade.  I find the --enable-nmh-*
+       options too wordy and I'm not sure why Richard went that route.
+       I've renamed them to just --enable-*, but the old versions will
+       still work as well (they just aren't advertised).
+
+       * Added a line to the "nmh configuration" output saying whether
+       POP is enabled.
+
+       * Added a new README.developers file.  From the file:
+
+           This file is intended to provide a few tips for anyone doing
+           development on nmh.  Developers who learn things "the hard
+           way" about the nmh codebase (as opposed to local info best
+           encoded in a comment) are encouraged to share their wisdom
+           here.
+
+       Currently the topics are "autoconf files" and "directory structure".
+
+Tue Mar 14 12:41:48 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Applied, after some finessing,
+       Simon Burge <simonb@thistledown.com.au>'s --with-smtpservers patch:
+
+           Here's a patch that allows you to add
+
+                   --with-smtpservers=<some.host.name>
+
+           to the ./configure command line to set the "servers: " line in
+           etc/mts.conf.  Around here, we use "mailhost" so that all
+           machines in the current domain just talk to a central machine
+           and nothing else runs an MTA.  Now, I can use
+
+                   --with-smtpservers=mailhost
+
+           instead of having to remember to fix this by hand (and often
+           forgetting to do so!).
+
+       * Inspired by Simon's patch, added an --enable-masquerade option
+       to configure.  It will set the "masquerade:" line of mts.conf.
+       You may specify a subset of the three types of masquerading, like
+       --enable-masquerade="draft_from mmailid", or leave off explicit
+       arguments to enable all three types.
+
+       * Alphabetized the --enable and --with options in configure.in and
+       INSTALL and added documentation of the two new options to the latter.
+
+       * Added new dependency for mts.conf: Makefile.  If this isn't
+       done, then when you reconfigure nmh with new values for
+       --enable-masquerade or --with-smtpservers, you'll fail to get an
+       updated copy of mts.conf.
+
+       * Applied Simon Burge <simonb@thistledown.com.au>'s dtimep.lex patch:
+
+           It seems that some MUA's didn't handle y2k very well - ELM
+           seems to be one of them, and Ultrix's DXmail (based on MH!).
+           I've got a few emails this month that look like:
+
+                   575   Jan 00  Xxxxxx Xxxx       3603  ...
+           and
+                    22+  Jan 00  Xxx Xxxxx         1771  ...
+
+           The first has "15 Jan 100" as the date and the second has 
+           "19 Jan 00" as the date.  The following works around this so 
+           that scan, show, sortm, etc work ok.
+
+       I put Simon's patch under the control of a new #define called
+       FIX_NON_Y2K_COMPLIANT_MUA_DATES.  There's some commentary in
+       acconfig.h about when you might not want to #define it.
+
+       * Created new dtimep.c-lexed with Simon's change using dtimep.lex
+       lexed on Solaris 2.6.  Added missing dependency in
+       zotnet/tws/Makefile.in for dtimep.c: dtimep.c-lexed.
+
+       * Added scan.MMDDYY and scan.YYYYMMDD format files.
+
+Mon Mar 13 21:32:00 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Applied Sullivan N. Beck <sbeck@cise.ufl.edu>'s mhshow-suffix patch:
+
+            With the patch below, you can add lines like:
+
+                mhshow-suffix-application/msword: .doc
+                mhshow-suffix-application/PostScript: .ps
+
+            to the mhn.defaults file to append the given suffix to a
+           scratch file.  This allows applications which require a
+           certain suffix to run properly.
+
+       * Removed -force_html from lynx entry in mhn.defaults.sh (I
+       believe older versions of lynx lack that option) and added
+       "mhshow-suffix-text/html: .html".
+               
+       * Modified username_extension masquerading to only use the
+       extended address on generated [Resent-]From: lines and SMTP
+       envelope From:.  With Neil's original implementation, nmh's global
+       idea of the username was changed, which would result in inc lying
+       and saying you had no new mail because it was looking for a
+       mailbox called, for instance, "dan-nmh" (where username was "dan"
+       and $USERNAME_EXTENSION was "-nmh").
+               
+       * Applied Simon Burge <simonb@thistledown.com.au>'s dtime.c patch:
+       
+           There's a wrap-around problem that affects the implementation
+           of Zeller's congruence in dtime.c.  This causes the day-of-week
+           calculations to fail for dates after Feb 29, 2000 (probably up
+           until some year far in the future).
+
+Mon Mar 06 12:20:20 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Applied Neil W Rickert <rickert+nmh@cs.niu.edu>'s msh.c patch:
+
+            I finally tracked down the problem in msh that was causing
+           errors whenever I tried to examine a 'mmdf' style mailbox.
+
+           It turns out that not enough memory was being allocated with
+           calloc(), causing memory pointers to be overwritten and
+           corrupted.
+               
+Fri Mar 03 16:07:33 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Changed the new "plussed_user" option to mts.conf's
+       "masquerade:" to "username_extension" after getting feedback from
+       qmail users, who use '-' as a separator rather than '+'.  Removed
+       checking of $USERPLUS variable.  Now check $USERNAME_EXTENSION,
+       which needs to include the appropriate separator for your MTA
+       ('-', '+', or whatever) as its first character.
+               
+Thu Mar 02 23:04:30 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Added a new "boolean" type to mh.h and TRUE and FALSE constants.
+               
+       * Added a note to DIFFERENCES stating that it's out-of-date
+       (Richard was the last one to update it) and that we should
+       consider only documenting incompatibilities with MH there.
+
+       * Implemented (and documented) a third kind of username
+       masquerading: "plussed user" masquerading.  This one was suggested
+       by Neil Rickert <rickert+nmh@cs.niu.edu>.  It's based on sendmail's
+       "plussed user" feature, where mail sent to <user>+<string> will be
+       delivered to <user>.  When it's enabled, it's controlled by the
+       $USERPLUS environment variable.  How is it enabled?  Well, that
+       leads me to:
+
+       * Renamed the "mmailid:" setting in mts.conf to "masquerade:", and
+       changed it so that rather than being a boolean, it can be set to
+       any combination of the three values "draft_from", "mmailid", and
+       "plussed_user".  Thus it is now possible to enable the three types
+       of masquerading individually.
+
+       * Fixed a bug with "mmailid" masquerading (dating back to MH?)
+       where if it was turned on, ','s would no longer be considered
+       GECOS field delimiters.
+       
+Wed Mar 01 23:30:50 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Changed the GECOS-field '&' translation behavior to be
+       controlled by the BSD42 #define rather than GCOS_HACK, since it's
+       apparently always appropriate on OSes where BSD42 is #defined, and
+       never appropriate on any other OSes.  Thanks to Kimmo Suominen for
+       responding to my "What is this code here for?" comment in mts.c
+       and explaining the feature.
+       
+Mon Feb 28 21:50:29 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Upped the version number to 1.0.3+dev (ideally this should be
+       done by whoever makes a release tar file, immediately after doing
+       so).
+       
+       * Applied Paul Fox <pgf-spam@foxharp.boston.ma.us>'s scansbr.c
+       patch, posted to comp.mail.mh, which he says prevents loss of mail
+       when inc'ing into a full filesystem.
+
+       * Changed "echo > stamp-h.in" in Makefile.in to "date > stamp-h.in"
+       so that stamp-h.in will be different each time configure.in and
+       related files are changed, making it easier to check it in (which
+       is necessary to prevent unnecessary autoconf calls).
+
+       * My declaration of initgroups() in slocal.c to eliminate the "no
+       prototype" warning wasn't portable (FreeBSD 3.[23] choked).  Now
+       use AC_EGREP_HEADER to see where initgroups() is declared, if
+       anywhere.
+
+Sun Feb 20 12:17:15 2000 Ruud de Rooij <ruud@ruud.org>
+
+       * Fix security hole in mhshowsbr.c which allowed untrusted shell
+         code to be executed.
+       
+       * Released nmh 1.0.3.
+
+Thu Feb 10 10:54:36 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Oops.  %-escapes on mhstore lines in mhn.defaults.sh should not
+       be surrounded by single quotes, as a shell is not spawned when
+       just saving files, and the filenames will end up with literal
+       quotes embedded in them.
+
+Fri Feb 04 12:29:12 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Whoever originally added the -help switch to all the commands
+       got too cute and had the option itself print out as "-(help)" in
+       the -help output.  One theory is that they were making reference
+       to the fact that clearly you know about the -help option since
+       you're currently looking at its output.  I think it's a bad idea
+       to overload the meaning of the parentheses, however -- they're
+       supposed to indicate what abbreviated prefix of the switch you're
+       allowed to specify.
+
+       The other theory is that because you can say something like
+       "mhstore -" and get "mhstore: - ambiguous.  It matches" followed
+       by the same list of switches you get with -help, they were saying
+       you can "sorta" abbreviate "-help" as "-".  You don't get the
+       "Usage:" string, though, so it's not really the same thing.
+
+Thu Feb 03 17:52:01 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Applied wesley.craig@umich.edu's KPOP patches.  According to him:
+
+              The following patch fixes a problem with requesting a
+             service key for a machine that has multiple 'A' records.  It
+             also makes "-kpop" a command line option, for users who
+             would like to use both "kpop" and "pop".
+
+       Did no testing of the new features, as I don't have access to a
+       KPOP server.
+
+       * Modified inc.man and msgchk.man to document Wesley's new -kpop.
+
+       * Modified INSTALL and config.h.in to reflect the new -kpop feature.
+
+Fri Jan 28 17:39:24 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * All %-escapes in mhn.defaults that actually expand to something
+       should be surrounded by single quotes.  Added quotes to the ones
+       in mhn.defaults.sh that were missing them.
+
+       * Added check for lynx to write mhshow-show-text/html line in
+       mhn.defaults.sh.
+
+Thu Jan 27 12:22:25 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * makedir() had multiple bugs dating back to MH.  An octal
+       constant was apparently being interpreted as decimal, resulting in
+       directories with no user read or execute permissions, making
+       nested directory creation fail.  And there wasn't even an
+       _attempt_ to set desired permissions (e.g. from "Folder-Protect:"
+       in .mh_profile) on the outer directories of a nested directory.
+
+       * A second `make install' would always fail because the check for
+       whether mh_profile.5 existed was written incorrectly.
+       
+Wed Jan 26 02:22:00 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Added documentation on both types of masquerading to post's man
+       page.
+
+Tue Jan 25 22:58:12 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
+
+       * Doug's portability fix of my setgid inc autodetection had a
+       caching bug -- if you re-ran configure, uip/Makefile would be
+       corrupted, and installation would bomb out on OSes where inc needs
+       to be setgid.
+
+       * Implemented a new kind of email address masquerading.  Usually,
+       when a user writes a custom "From:" header in a draft, nmh uses it
+       rather than generating one.  However, the user's true address is
+       used in the SMTP envelope "From:" and is revealed in the "Sender:"
+       header.  Now, when mmailid is set to non-zero, the envelope
+       "From:" uses the address specified in the draft "From:" header,
+       and there is no "Sender:" header.  This is useful when sending on
+       behalf of a remote POP3 account or when remote mail robots
+       incorrectly use the envelope "From:" in preference to the body
+       "From:".  This processing has only been implemented for post, not
+       for the undocumented spost (which was already missing some "From:"
+       processing that post has).
+
 Mon Jan 24 22:26:06 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
 
-       * Got rid of the rest of the warnings that I didn't have time for
-       on 1999-07-15 (and, it would seem, some new ones people introduced
-       since then).  The primary ones were the warnings that default
-       prototypes were being used for [v]snprintf() and str[n]casecmp().
-       As of right now, there are _no_ compilation warnings except on the
-       lex output file (at least under AIX 4.1.5 and Solaris 2.6).
+       * Got rid of the rest of the gcc -Wall warnings that I didn't have
+       time for on 1999-07-15 (and, it would seem, some new ones people
+       introduced since then).  The primary ones were the warnings that
+       default prototypes were being used for [v]snprintf() and
+       str[n]casecmp().  As of right now, there are _no_ compilation
+       warnings except on dtimep.c-lexed (at least under AIX 4.1.5 and
+       Solaris 2.6).
 
 Sun Jan 2 23:42:18 2000 Ruud de Rooij <ruud@ruud.org>
 
@@ -174,7 +1597,7 @@ Sun Sep 12 09:19:27 1999 Doug Morris <doug@mhost.com>
        * Added check for <db1/ndbm.h> which is the new location where
        linux systems appear to be stuffing this header file.
 
-Thu Sep  9 23:15:49 1999 Doug Morris <doug@mhost.com>
+Thu Sep 09 23:15:49 1999 Doug Morris <doug@mhost.com>
 
        * fixed varous mkstmep bugs introduced in 1.0.1 by me. Whups!
 
@@ -208,7 +1631,7 @@ Thu Jul 15 18:37:07 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
        * Default rcvdistcomps no longer puts a copy of all outgoing
        messages in outbox.  Added an rcvdistcomps.outbox that does.
 
-Sat Jun  9 12:22:47 1999 Doug Morris <doug@mhost.com>
+Sat Jun 09 12:22:47 1999 Doug Morris <doug@mhost.com>
 
        * Updated configure to check for mkstemp (available on OpenBSD) and 
        substitute it for mktemp if available. 
@@ -623,9 +2046,9 @@ Fri May  7 17:18:28 1999  Dan Winship  <danw@mit.edu>
        * Add new section on "Transfer Encodings" to man page for mhbuild.
 
        * In mhbuild.c, split compose_content into compose_content
-         (parse and execute composition string), and scan_content (scan content,
-         decided transfer encoding, check for clash with boundary string).
-         I did a good amount of rearranging of this code.
+         (parse and execute composition string), and scan_content (scan
+         content, decided transfer encoding, check for clash with boundary
+         string).  I did a good amount of rearranging of this code.
 
        * Moved definitions for data structures for parsing MIME
          messages from mhn.c and mhbuild.c to a new include
@@ -1774,10 +3197,11 @@ Sun Dec  1 10:00:00 1996  Richard Coleman  <coleman@math.gatech.edu>
        * Added flist command from exmh distribution.  It doesn't work
          yet, but it compiles :-)
 
-       * Changed default location for install to /usr/local/nmh/{bin,etc,lib,man}.
-         Split files so that format and configuration files go in nmh/etc, and
-         support binaries go in nmh/lib.  Of course, all this can now be changed
-         in the top level Makefile.
+       * Changed default location for install to
+         /usr/local/nmh/{bin,etc,lib,man}.  Split files so that format
+         and configuration files go in nmh/etc, and support binaries go
+         in nmh/lib.  Of course, all this can now be changed in the top
+         level Makefile. 
 
        * Started with mh-6.8.3 as based and converted to autoconf.
          Rewrote all the Makefiles.  Currently only works with sendmail/smtp.