+2009-01-17 Eric Gillespie <epg@pretzelnet.org>
+
+ * etc/mhn.defaults.sh: Never try to make mhshow start xterm.
+
+2009-01-16 Eric Gillespie <epg@pretzelnet.org>
+
+ * test/runtest, test/tests/inc/test-deb359167,
+ test/tests/inc/test-eom-align, test/tests/manpages/test-manpages:
+ Load common.sh via absolute path, otherwise some /bin/sh
+ (e.g. dash) can't load it.
+
+ * uip/Makefile.in, uip/new.c, test/tests/new/test-basic: Add new
+ program, and fn/fp/unseen symlinks.
+
+ * test/{runtest,setup-test}: Move MH profile under Mail directory
+ so each test script will have its own to muck with, if needed.
+
+ * h/Makefile.in, h/crawl_folders.h, sbr/Makefile.in,
+ sbr/crawl_folders.c, uip/folder.c: Extract the folder crawling
+ code from folder.c into new crawl_folders function, using a
+ callback to assemble the folder info in folder.c. Drop compare
+ function and use strcmp instead. Rename addfold and addir to
+ add_folder and add_children (add dir vs. add folder?
+ confusing names).
+
+2008-12-26 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * sbr/m_getfld.c: fix two bugs which could cause us to walk off
+ the beginning of the stdio or prefix-string buffer when checking
+ for presence of the end-of-message delimiter in some situations.
+ This might cause inc to dump core if you were unlucky. (This was
+ Debian bug 359167.)
+ * test/tests/inc/{md5sums,msgheader.txt,test-deb359167,
+ test-eom-align,fromline.txt,filler.txt,deb359167.mbox}: new tests
+ both for the specific problem and to try to check various alignments
+ of the eom string with the stdio buffer ending.
+ * test/common.sh: new file for common utility functions for the
+ test scripts. Moved findprog out of manpage test script into this
+ new file. Added some functions for doing progress indicators.
+
+2008-12-25 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * test/runtest: automatically run setup-test if it hasn't already
+ been done. Improve error handling in test script with 'set -e'.
+
+2008-10-23 David Levine <levinedl@acm.org>
+
+ * h/mh.h: raised NAMESZ from 128 to 999. RFC 2822 limits line
+ lengths to 998 characters, so a header name can be at most that long.
+ m_getfld limits header names to 2 less than NAMESZ, which is fine,
+ because header names must be followed by a colon. Add one for
+ terminating NULL.
+
+2008-10-23 David Levine <levinedl@acm.org>
+
+ * sbr/m_getfld.c: in warning message, use NAMESZ-2 instead of
+ NAMESZ-1 bytes because the message says "exceeds", not
+ "is greater than or equal to".
+
+2008-10-23 David Levine <levinedl@acm.org>
+
+ * docs/MAIL.FILTERING: added note on removing procmail -f or
+ -r options to try to suppress generation of a "From " line on
+ incoming messages.
+
+2008-08-14 Eric Gillespie <epg@pretzelnet.org>
+
+ * test/setup-test: Don't run autogen.sh unless needed. Build in a
+ blddir under the temporary directory so as not to interfere with
+ whatever the developer may be doing in the source directory.
+ If the temporary directory already exists, rebuild and install it.
+
+2008-08-13 Eric Gillespie <epg@pretzelnet.org>
+
+ * sbr/ambigsw.c: Send print_sw output to stderr. This avoids
+ strange problems with scan `pick -bogus`, not to mention being
+ nicer anyway.
+
+ * sbr/getans.c, sbr/print_help.c, uip/msh.c: Send print_sw output
+ to stdout.
+
+ * h/prototypes.h, sbr/print_sw.c (print_sw): Add FILE * argument
+ and send output there rather than to stdout.
+
+ * test/tests/pick/test-stderr: Add test that error messages don't
+ end up going to stdout.
+
+2008-08-13 Eric Gillespie <epg@pretzelnet.org>
+
+ * uip/pick.c: Print matching messages immediately, instead of
+ waiting until the very end to print anything.
+ Ensure valid sequence name as soon as we parse it from command,
+ instead of searching the messages first.
+
+2008-08-13 Eric Gillespie <epg@pretzelnet.org>
+
+ * uip/Makefile.in, uip/popi.c: Remove popi.c, which has been dead
+ since PatchSet 257 (2000/06/12 11:07:34 UTC).
+
+2008-08-13 Eric Gillespie <epg@pretzelnet.org>
+
+ * h/mhparse.h: Move interfaces also used by mhbuildsbr.c here
+ from mhparse.c.
+
+ * uip/Makefile.in (mhbuild): Build with mhparse.o.
+
+ * uip/mhbuildsbr.c: Drop the duplication of mhparse.c.
+
+ * uip/mhbuild.c, uip/mhlist.c, uip/mhn.c, uip/mhshow.c,
+ uip/mhstore.c, uip/mhtest.c: Drop check swdeclaration, which is
+ now in mhparse.h.
+
+ * uip/mhparse.c: Move some declarations to mhparse.h, and remove
+ 'static' from the definitions here.
+ (get_ctinfo): Take magic mhbuild support from mhbuildsbr.c's copy,
+ and adapt callers.
+ (incl_name_value, extract_name_value): Move from mhbuildsbr.c to
+ support get_ctinfo change).
+ (get_content, open7Bit): Add Content-Disposition support, added to
+ mhbuildsbr.c's copy in mhbuildsbr.c r1.12 (PatchSet 549).
+ (InitText): Default to CHARSET_UNSPECIFIED instead of "US-ASCII",
+ as mhbuildsbr.c's copy did. Explain termproc.
+ (openBase64, openQuoted, open7Bit): Fix comment from r1.5:
+ suffixes, not prefixes.
+ (openMail): Explain showproc.
+
+ * test/tests/mhshow/test-cte-binary: Add test for
+ Content-Transfer-Encoding: binary (Debian #136976).
+
+ * test/tests/mhbuild/test-forw: Add an mhbuild test, testing forw
+ with and without RFC-934 mode. More mhbuild tests would be nice.
+
+2008-08-13 Eric Gillespie <epg@pretzelnet.org>
+
+ * test/tests/bad-input/test-header: Add test for it.
+
+ * sbr/m_getfld.c: If we reach the end of the line without finding
+ a ':' when parsing a header field, treat that line as the
+ beginning of the body rather than blowing up. These messages are
+ usually spam, but it's nice to be able to at least scan them.
+
+2008-08-12 Eric Gillespie <epg@pretzelnet.org>
+
+ * test/tests/mhshow/test-qp: Test various valid and invalid
+ escape sequences.
+
+ * uip/mhparse.c (openQuoted): Simplify the decode-or-show for loop by
+ peeking ahead to the next byte(s) when encountering '=', and just let
+ invalid escape sequences through as literals (fixes bug #15245).
+
+2008-08-12 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * autogen.sh (new file): add script for running the GNU
+ autotools in the right order
+ * INSTALL: mention that you need to run autogen.sh if you
+ got nmh from CVS
+ * docs/README.developers: mention autogen.sh rather than
+ suggesting running autoheader and autoconf by hand.
+ * test/setup-test: run autotools via autogen.sh
+
+2008-08-08 Eric Gillespie <epg@pretzelnet.org>
+
+ * sbr/discard.c, sbr/m_getfld.c, uip/scansbr.c: Add support for
+ DragonFlyBSD stdio (from NetBSD pkgsrc).
+
+2008-08-05 Eric Gillespie <epg@pretzelnet.org>
+
+ * uip/folder.c: chdir(nmhdir) in main rather than in dodir, which
+ is called many times. Drop the chdir in get_folder_info, which
+ served no purpose at all. If struct stat has d_type (BSD), use
+ that to skip processing (strcmp, stat, and so on) of message
+ files, mostly undoing the slow-down from the last change.
+
+ * configure.in: Call CHECK_TYPE_STRUCT_DIRENT_D_TYPE.
+
+ * aclocal.m4: Add CHECK_TYPE_STRUCT_DIRENT_D_TYPE from
+ GNU coreutils.
+
+2008-08-04 Eric Gillespie <epg@pretzelnet.org>
+
+ * uip/folder.c: Simplify dodir/addir/addfold. Dump hacky
+ over-optimization in addir that tried to avoid readdir after all
+ child directories had been read; this was also trying to support
+ symlinks to directories, but would have been failing (because
+ nlink may have gone to 0 with symlinks to directories remaining)
+ had the lstat usage been correct (lstat doesn't fail for normal
+ directories; should have used S_ISLNK).
+
+2008-08-03 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * test/setup-test: use 'set -e' so we stop on compile failure.
+ Configure --enable-debug for convenience in debugging.
+
+ * uip/whatnowsbr.c: bug #23319: rework the way we handle the working
+ directory when invoking the user's shell, so that we don't have
+ issues when the cwd contains a space or shell special character.
+ * test/tests/whatnow/test-attach-detach, test/tests/whatnow/test-cd,
+ test/tests/whatnow/test-ls: test cases for this.
+
+ * sbr/fmt_compile.c: add 'do { ... } while (0)' wrappers
+ to various multi-statement macros to avoid nasty surprises
+ if the macros are used in if() clauses.
+
+ * bug #23436: man/scan.man, man/forw.man, man/inc.man,
+ man/mh-chart.man, man/mhmail.man, man/mhshow.man,
+ man/mhstore.man, man/msgchk.man, man/packf.man, man/scan.man:
+ fix minor syntax errors groff warns about.
+ * test/runtest, test/README: allow test cases to report
+ that they have been SKIPped as well as PASS/FAIL
+ * test/tests/manpages/test-manpages - new test which runs groff
+ on the manpages and checks that there are no warnings.
+ * test/runalltests: ignore editor backup files
+
+2008-08-03 Eric Gillespie <epg@pretzelnet.org>
+
+ * etc/replcomps, etc/replgroupcomps: Trim trailing whitespace from
+ Subject field.
+
+2008-08-03 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * sbr/fmt_compile.c: when doing an if-test on the result
+ of a function which returns a string result, check whether
+ the string is non-empty (as the documentation says we do).
+ Previously we were always testing the integer 'value'. Bug
+ spotted by Eric Gillespie.
+ * test/tests/repl/test-if-str: test case for this bug
+
+2008-07-24 Eric Gillespie <epg@pretzelnet.org>
+
+ * test/setup-test: Run 'make clean' before building
+
+2008-07-24 Eric Gillespie <epg@pretzelnet.org>
+
+ * test/runtest: cat test-temp-dir only once. Destroy and create
+ test Mail hierarchy here, so each test has its own independent
+ test data.
+
+ * test/setup-test: Drop needless pushd/popd, which don't exist in
+ sh anyway. Don't use aclocal, which is part of automake.
+ Don't create Mail hierarchy here (see test/runtest).
+
+ * test/tests/folder/test-create, tests/folder/test-total: Drop
+ unused BINDIR.
+
+ * tests/pick/test-pick: Remove failing no-op test.
+
+ * test/tests/scan/test-scan: Write expected and actual output to
+ files and diff them. This way, if the output differs, diff
+ provides the FAILing exit code and shows the differences.
+
+2008-06-12 Josh Bressers <josh@bress.net>
+ * man/repl.man, etc/mhl.reply:
+ Add an attribution line when replying to messages.
+
+2008-06-02 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * h/mh.h, h/prototypes.h, sbr/done.c, uip/inc.c,
+ uip/mhbuild.c, uip/mhlist.c, uip/mhn.c, uip/mhshow.c,
+ uip/mhstore.c, uip/mhtest.c, uip/packf.c, uip/pick.c,
+ uip/rcvdist.c, uip/rcvstore.c, uip/sendsbr.c: when
+ building on gcc, use the noreturn attribute on various
+ functions (should improve code and avoid some spurious
+ 'uninitialized variable' warnings).
+
+2008-06-01 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * docs/README.developers: update the bits about doing a
+ release announcement, now I've actually done one.
+
+2008-05-22 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * uip/scansbr.c: don't use MB_CUR_MAX if we aren't compiled
+ with multibyte support.
+
+ * uip/whatnowsbr.c: factor out common code for writing ls
+ shell command, and make it do more sensible buffer length
+ checks. Also avoid relying on the return value of sprintf(),
+ as some old systems don't return number of characters written.
+
+2008-05-21 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * sbr/utils.c (mh_xrealloc): don't assume realloc() can
+ handle NULL pointers; some non-POSIX realloc()s can't.
+
+ * sbr/dtimep.lex: add some table size declarations for the
+ benefit of elderly lexes with small defaults.
+
+2008-05-18 David Levine <levinedl@acm.org>
+
+ * sbr/addrsbr.c: removed "err" from conditional, because gcc
+ correctly warned that it would always evaluate as true. It's
+ the address of a static array.
+
+2008-05-16 Oliver Kiddle <okiddle@yahoo.co.uk>
+
+ * sbr/Makefile.in, config/Makefile.in: Don't use $< in target rules
+ in makefiles, as POSIX says it's only defined in inference rules.
+
+2008-05-13 David Levine <levinedl@acm.org>
+
+ * configure.in, INSTALL: if --enable-masquerade is not
+ specified to configure, enable all supported masquerade forms.
+ This allows users to masquerade with the default
+ configuration. That seems to be more worthwhile now than
+ trying to prevent users from using it, especially with
+ single-user installations or those where a user can edit
+ etc/mts.conf.
+
+2008-05-04 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * bug #23167: sbr/ruserpass.c (ruserpass): make bad permissions
+ on .netrc be an instantly fatal error. Previously we returned
+ an error value; however, no caller was checking it. So now
+ ruserpass() has a void return type.
+
+ * bug #23163: various minor fixes for the benefit of
+ older Unixes (specifically SunOS 4):
+ reintroduce strerror() substitute implementation
+ provide memmove() substitute implementation
+
+ * bug #23163: fix accidentally broken 'build outside
+ source directory' feature
+
+ * bug #23162: sbr/dtime.c: fix stray HAVE_TM_GMTOFF that
+ wasn't updated to the new macro name.
+
+2008-04-30 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * mts/smtp/smtp.c: provide a callback for SASL_CB_AUTHNAME
+ (fixes issue with SASL sending the wrong username in some
+ circumstances). Thanks to <der_wachtmeister@freenet.de>
+ for the patch.
+
+2008-04-29 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * Revert previous attempt at fix for SASL issue as it
+ is the wrong approach.
+
+ * Fix in correct manner, by making sm_rrecord() and thus
+ sm_hear() set the length of the reply string correctly
+ (the SASL libraries now care if you pass in the wrong
+ length).
+
+ * Correct various places in smtp.c where the reply string
+ might not have been correctly NUL-terminated. Includes a
+ fix for a particularly nasty and long standing screwup
+ where the buffer length counting in smhear() was totally
+ broken for continued lines from the server.
+
+2008-04-29 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * Cope with sasl_decode64() returning SASL_CONTINUE, as
+ happens with newer sasl libraries and LOGIN auth.
+
+2008-04-27 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * Updated some of the 'how to do a release' documentation.
+
+ * Upped the VERSION string to '1.3-dev', since 1.3-RC1 has
+ been branched off.
+
+2008-04-27 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * Released nmh-1.3 RC1.
+
+2008-04-11 Oliver Kiddle <okiddle@yahoo.co.uk>
+
+ * acconfig.h, configure.in, sbr/dtime.c, sbr/pidwait.c,
+ uip/mhshowsbr.c, uip/rcvtty.c, uip/slocal.c, uip/termsbr.c:
+ move most remaining macros out of acconfig.h which is an
+ obsolete feature of autoconf
+
+2008-04-05 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * bug #18655: fix use of admonish() for a fatal error (should
+ be adios(); only actual effect would be wrong exit code).
+ Thanks to Craig Leres for spotting this.
+
+2008-04-05 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * bug #20028 (Debian bug 399271): fix code assuming that pointer
+ differences were 32 bits -- thanks to Dean Gaudet for the patch.
+
+2008-01-25 Josh Bressers <josh@bress.net>
+
+ * uip/mhshowsbr.c (show_all_messages): Be more generous when parsing
+ multipart messages.
+
+2007-11-04 Joel Reicher <joel@panacea.null.org>
+
+ * Changed done() link overriding to function pointer. Return type
+ is now void so that exit() can be used as done() callback. Dead
+ code return from all done()s removed, with return 1 in main()
+ following done() (should never be reached).
+
+2007-08-21 Josh Bressers <josh@bress.net>
+
+ * Red Hat Bug #253342: inc.c, utils.c, utils.h: When inc is run with
+ the -silent flag, don't exit(1) for no apparent reason.
+
+2007-03-12 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * bug #18630, #18631, #18632, #18634: various patches from
+ Craig Leres fixing error message argument problems.
+
+2007-03-12 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * bug #15212: configure.in, acconfig.h: remove configure test for
+ broken AT&T vi. This test was broken (it was always returning
+ failure even for non-broken vi implementations) and
+ unfixable. Nobody should be using AT&T vi any more so I have
+ simply moved it back to being a setting you can put manually into
+ acconfig.h if you must.
+
+2006-10-24 David Levine <levinedl@acm.org>
+
+ * uip/sendsbr.c: with attachformat values of 1 or 2, add
+ name= portion to Content-Type header. This makes them
+ consistent with attachformat value 0. And it allows mhstore
+ to use that (file)name when extracting attachments.
+
+2006-08-26 Josh Bressers <josh@bress.net>
+
+ * configure.in: If we're not using dotlocking, there is no need to set
+ inc sgid.
+
+2006-03-30 David Levine <levinedl@acm.org>
+
+ * uip/sendsbr.c: with attachformat values of 1 or 2, only
+ generate Content-Disposition headers for MIME attachments, not
+ for the message contents themselves. Microsoft Outlook Build
+ 10.0.6626, at least, doesn't show the message contents if they
+ have Content-Disposition.
+
+2006-03-09 Josh Bressers <josh@bress.net>
+
+ * sbr/fmt_rfc2047.c (decode_rfc2047): Don't close the iconv descriptor
+ if it isn't valid.
+
+2006-03-08 Josh Bressers <josh@bress.net>
+
+ * (mh_strcasecmp): Rename the private strcasecmp function to
+ mh_strcasecmp. This keeps the newer gnu linker happy.
+
+2006-03-05 Oliver Kiddle <okiddle@yahoo.co.uk>
+
+ * sbr/fmt_rfc2047.c: don't try to malloc 0 bytes if an RFC2047
+ encoded block is empty
+
+2006-03-04 Peter Maydell <pmaydell@chiark.greenend.org.uk>
+
+ * etc/Makefile.in: use INSTALL_SCRIPT to install scripts;
+ this allows INSTALL_PROGRAM to be set to 'install -s' so
+ binaries are stripped on installation. Apparently the BSDs
+ do this.
+
+2006-02-25 David Levine <levinedl@acm.org>
+
+ * uip/sendsbr.c: replaced st_mtim with st_mtime, that's what
+ it should have been. Added #include of h/tws.h to pick up
+ dtime() prototype.
+
+2006-02-20 David Levine <levinedl@acm.org>
+
+ * h/mh.h, h/prototypes.h, uip/mhbuildsbr.c, uip/send.c,
+ uip/sendsbr.c, uip/viamail.c, uip/whatnowsbr.c, man/send.man:
+ added -attachformat switch to send, to support alternate MIME
+ header contents when using -attach. See send man page for
+ description.
+
+ * man/mhbuild.man: wrapped one appearance of "Content-Disposition"
+ with quotes, to be consistent with others.
+
+2006-02-20 Josh Bressers <josh@bress.net>
+
+ * h/utils.h, sbr/utils.c, uip/flist.c, uip/folder.c: Move duplicate
+ function num_digits into utils.c
+
+2006-02-19 Josh Bressers <josh@bress.net>
+
+ * sbr/m_draft.c, sbr/utils.c, uip/folder.c, uip/inc.c,
+ uip/mhstoresbr.c, uip/popi.c, uip/refile.c: Add create_folder()
+ function, replacing duplicate code during folder creation.
+
+2006-02-18 David Levine <levinedl@acm.org>
+
+ * h/mime.h, h/mhparse.h, uip/mhbuildsbr.c, uip/mhfree.c,
+ man/mhbuild.man, docs/TODO: added support for an optional
+ Content-Disposition header in mhbuild (only). Its contents
+ are supplied between {}, positioned after the optional [], in
+ a mhbuild directive. If the contents do not contain a
+ "filename=" parameter, and the directive has a filename, or
+ something else that ends with "name=", then that will be used
+ to add a "filename=" parameter to the header.
+
+2006-02-12 David Levine <levinedl@acm.org>
+
+ * docs/TODO: added RFC2183 to reference of RFC1806 for
+ Content-Disposition header.
+
+2006-01-31 David Levine <levinedl@acm.org>
+
+ * uip/mhbuild.c, uip/mhbuildsbr.c, man/mhbuild.man: added
+ -nocontentid switch, to disable generation of Content-ID:
+ header in MIME messages. (Also added -contentid for
+ symmetry.) The default configuration of Microsoft Outlook,
+ Build 10.0.3416 in particular, doesn't see attachments in
+ incoming messages if there are Content-ID headers, see
+ http://home.cwru.edu/~wrv/eudoraoutlookfix.html. This allows
+ users to easily accomodate that by adding
+ mhbuild: -nocontentid to their .mh_profile.
+
+2006-01-29 Oliver Kiddle <okiddle@yahoo.co.uk>
+
+ * bug 4360: uip/replsbr.c: remove trailing newlines from components
+ to fix bug with spaces at the end of Subject/References in replies
+
+2006-01-18 Oliver Kiddle <okiddle@yahoo.co.uk>
+
+ * configure.in: use AS_HELP_STRING for formatting help messages
+
+ * configure.in, sbr/fmt_scan.c: add autoconf magic to support
+ old systems that don't support multibyte character sets
+
+ * sbr/fmt_scan.c: fix bug with insertion of newline being wrong if
+ the num function was used at the end of the format buffer
+
+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 "<" and ">" 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".
+