2bd8a63a3709f2fa935a9a3fc3ecf247ee95885a
[mmh] / ChangeLog
1 2008-04-30  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
2
3         * Fixes ported from trunk: 
4         
5         * mts/smtp/smtp.c: provide a callback for SASL_CB_AUTHNAME
6         (fixes issue with SASL sending the wrong username in some
7         circumstances). Thanks to <der_wachtmeister@freenet.de>
8         for the patch.
9
10         * Revert previous attempt at fix for SASL issue as it
11         is the wrong approach.
12
13         * Fix in correct manner, by making sm_rrecord() and thus
14         sm_hear() set the length of the reply string correctly
15         (the SASL libraries now care if you pass in the wrong
16         length).
17
18         * Correct various places in smtp.c where the reply string
19         might not have been correctly NUL-terminated. Includes a
20         fix for a particularly nasty and long standing screwup
21         where the buffer length counting in smhear() was totally
22         broken for continued lines from the server.
23
24 2008-04-29  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
25
26         * Port fix from trunk for SASL not working with newer libsasl.
27
28 2008-04-27  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
29
30         * Released nmh-1.3 RC1.
31
32 2008-04-11  Oliver Kiddle <okiddle@yahoo.co.uk>
33
34         * acconfig.h, configure.in, sbr/dtime.c, sbr/pidwait.c,
35         uip/mhshowsbr.c, uip/rcvtty.c, uip/slocal.c, uip/termsbr.c:
36         move most remaining macros out of acconfig.h which is an
37         obsolete feature of autoconf
38
39 2008-04-05  Peter Maydell <pmaydell@chiark.greenend.org.uk>
40
41         * bug #18655: fix use of admonish() for a fatal error (should
42         be adios(); only actual effect would be wrong exit code).
43         Thanks to Craig Leres for spotting this.
44
45 2008-04-05  Peter Maydell <pmaydell@chiark.greenend.org.uk>
46
47         * bug #20028 (Debian bug 399271): fix code assuming that pointer
48         differences were 32 bits -- thanks to Dean Gaudet for the patch.
49
50 2008-01-25  Josh Bressers <josh@bress.net>
51
52         * uip/mhshowsbr.c (show_all_messages): Be more generous when parsing
53         multipart messages.
54
55 2007-11-04  Joel Reicher <joel@panacea.null.org>
56
57         * Changed done() link overriding to function pointer. Return type
58         is now void so that exit() can be used as done() callback. Dead
59         code return from all done()s removed, with return 1 in main()
60         following done() (should never be reached).
61
62 2007-08-21  Josh Bressers <josh@bress.net>
63
64         * Red Hat Bug #253342: inc.c, utils.c, utils.h: When inc is run with
65         the -silent flag, don't exit(1) for no apparent reason.
66
67 2007-03-12  Peter Maydell <pmaydell@chiark.greenend.org.uk>
68
69         * bug #18630, #18631, #18632, #18634: various patches from
70         Craig Leres fixing error message argument problems.
71
72 2007-03-12  Peter Maydell <pmaydell@chiark.greenend.org.uk>
73
74         * bug #15212: configure.in, acconfig.h: remove configure test for
75         broken AT&T vi. This test was broken (it was always returning
76         failure even for non-broken vi implementations) and
77         unfixable. Nobody should be using AT&T vi any more so I have
78         simply moved it back to being a setting you can put manually into
79         acconfig.h if you must.
80
81 2006-10-24  David Levine <levinedl@acm.org>
82
83         * uip/sendsbr.c: with attachformat values of 1 or 2, add
84         name= portion to Content-Type header.  This makes them
85         consistent with attachformat value 0.  And it allows mhstore
86         to use that (file)name when extracting attachments.
87
88 2006-08-26  Josh Bressers <josh@bress.net>
89
90         * configure.in: If we're not using dotlocking, there is no need to set
91         inc sgid.
92
93 2006-03-30  David Levine <levinedl@acm.org>
94
95         * uip/sendsbr.c: with attachformat values of 1 or 2, only
96         generate Content-Disposition headers for MIME attachments, not
97         for the message contents themselves.  Microsoft Outlook Build
98         10.0.6626, at least, doesn't show the message contents if they
99         have Content-Disposition.
100
101 2006-03-09  Josh Bressers <josh@bress.net>
102
103         * sbr/fmt_rfc2047.c (decode_rfc2047): Don't close the iconv descriptor
104         if it isn't valid.
105
106 2006-03-08  Josh Bressers <josh@bress.net>
107
108         * (mh_strcasecmp): Rename the private strcasecmp function to
109         mh_strcasecmp.  This keeps the newer gnu linker happy.
110
111 2006-03-05  Oliver Kiddle <okiddle@yahoo.co.uk>
112
113         * sbr/fmt_rfc2047.c: don't try to malloc 0 bytes if an RFC2047
114         encoded block is empty
115
116 2006-03-04  Peter Maydell <pmaydell@chiark.greenend.org.uk>
117
118         * etc/Makefile.in: use INSTALL_SCRIPT to install scripts;
119         this allows INSTALL_PROGRAM to be set to 'install -s' so
120         binaries are stripped on installation. Apparently the BSDs
121         do this.
122
123 2006-02-25  David Levine <levinedl@acm.org>
124
125         * uip/sendsbr.c: replaced st_mtim with st_mtime, that's what
126         it should have been.  Added #include of h/tws.h to pick up
127         dtime() prototype.
128
129 2006-02-20  David Levine <levinedl@acm.org>
130
131         * h/mh.h, h/prototypes.h, uip/mhbuildsbr.c, uip/send.c,
132         uip/sendsbr.c, uip/viamail.c, uip/whatnowsbr.c, man/send.man:
133         added -attachformat switch to send, to support alternate MIME
134         header contents when using -attach.  See send man page for
135         description.
136
137         * man/mhbuild.man: wrapped one appearance of "Content-Disposition"
138         with quotes, to be consistent with others.
139
140 2006-02-20  Josh Bressers <josh@bress.net>
141
142         * h/utils.h, sbr/utils.c, uip/flist.c, uip/folder.c: Move duplicate
143         function num_digits into utils.c
144
145 2006-02-19  Josh Bressers <josh@bress.net>
146
147         * sbr/m_draft.c, sbr/utils.c, uip/folder.c, uip/inc.c,
148         uip/mhstoresbr.c, uip/popi.c, uip/refile.c: Add create_folder()
149         function, replacing duplicate code during folder creation.
150
151 2006-02-18  David Levine <levinedl@acm.org>
152
153         * h/mime.h, h/mhparse.h, uip/mhbuildsbr.c, uip/mhfree.c,
154         man/mhbuild.man, docs/TODO:  added support for an optional
155         Content-Disposition header in mhbuild (only).  Its contents
156         are supplied between {}, positioned after the optional [], in
157         a mhbuild directive.  If the contents do not contain a
158         "filename=" parameter, and the directive has a filename, or
159         something else that ends with "name=", then that will be used
160         to add a "filename=" parameter to the header.
161
162 2006-02-12  David Levine <levinedl@acm.org>
163
164         * docs/TODO: added RFC2183 to reference of RFC1806 for
165         Content-Disposition header.
166
167 2006-01-31  David Levine <levinedl@acm.org>
168
169         * uip/mhbuild.c, uip/mhbuildsbr.c, man/mhbuild.man:  added
170         -nocontentid switch, to disable generation of Content-ID:
171         header in MIME messages.  (Also added -contentid for
172         symmetry.)  The default configuration of Microsoft Outlook,
173         Build 10.0.3416 in particular, doesn't see attachments in
174         incoming messages if there are Content-ID headers, see
175         http://home.cwru.edu/~wrv/eudoraoutlookfix.html.  This allows
176         users to easily accomodate that by adding
177         mhbuild: -nocontentid to their .mh_profile.
178
179 2006-01-29  Oliver Kiddle  <okiddle@yahoo.co.uk>
180
181         * bug 4360: uip/replsbr.c: remove trailing newlines from components
182         to fix bug with spaces at the end of Subject/References in replies
183
184 2006-01-18  Oliver Kiddle  <okiddle@yahoo.co.uk>
185
186         * configure.in: use AS_HELP_STRING for formatting help messages
187
188         * configure.in, sbr/fmt_scan.c: add autoconf magic to support
189         old systems that don't support multibyte character sets
190
191         * sbr/fmt_scan.c: fix bug with insertion of newline being wrong if
192         the num function was used at the end of the format buffer
193
194 2006-01-17  David Levine <levinedl@acm.org>
195
196         * uip/post.c, uip/spost.c: in make_bcc_file (), use same
197         logic as in finish_headers () to detect whether there is an
198         existing From: line in the draft.  If draft_from masquerade
199         flag is enabled, this allows the From: to be obeyed in the
200         Bcc, instead of the old behavior of always replacing it with
201         the signature.
202
203 2006-01-17  Oliver Kiddle  <okiddle@yahoo.co.uk>
204
205         * sbr/fmt_scan.c: more robust multi-byte/column support for field
206         widths, restoring right justification feature
207
208 2006-01-16  Oliver Kiddle  <okiddle@yahoo.co.uk>
209
210         * h/aliasbr.h, h/rcvmail.h, man/Makefile.in, man/slocal.man,
211         sbr/lock_file.c, uip/aliasbr.c, uip/dropsbr.c, uip/post.c,
212         uip/slocal.c, man/mh-mts.man: remove remnants of code for MMDF
213
214         * uip/scansbr.c: multiply buffer size by MB_CUR_MAX so multi-byte
215         chars fit
216
217 2006-01-14  Josh Bressers <josh@bress.net>
218
219         * sbr/fmt_scan.c: Turn the PUTSF macro into a function capable of
220         handling multi column characters.
221
222 2006-01-07  Josh Bressers <josh@bress.net>
223
224         * Remove sbr/strerror.c -- strerror(3) is defined in C89.
225
226 2006-01-06  Josh Bressers <josh@bress.net>
227
228         * patch #3968: Move the add() function from its own file (add.c) and
229         into utils.c. There was also a duplicate add() function in mf.c which
230         has been removed.
231
232 2006-01-02  Josh Bressers <josh@bress.net>
233
234         * Remove sbr/pwd.c file, moving the pwd() function into sbr/utils.c.
235
236 2006-01-01  Josh Bressers <josh@bress.net>
237
238         * patch #3967: Create a mh_xrealloc function to prevent mistakes when
239         calling realloc.
240
241 2006-01-01  Josh Bressers <josh@bress.net>
242
243         * patch #3966: Create a mh_xmalloc function to prevent mistakes when
244         calling malloc.
245
246 2005-12-24  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
247
248         * Bug #15285: Don't use $< in target rules in makefiles, as POSIX
249         says it's only defined in inference rules. (BSD make was expanding
250         $< to the empty string in the rule for building sbr/dtimep.c, which
251         causes lex to apparently hang because it's reading from stdin.)
252
253 2005-12-24  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
254
255         * Completely redo db library checking -- we now check for working
256         (include file, library) pairs rather than checking for headers and
257         libraries separately. We also now provide --with-ndbm=lib and
258         --with-ndbmheader=header options to configure to handle situations
259         where configure's autodetection fails.
260
261 2005-12-21  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
262
263         * Fix stupid accidental dependence on a bash quirk in previous
264         configure script change.
265
266 2005-12-15  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
267
268         * Improve checking for Berkeley db libraries: configure should now
269         find a suitable library on systems with new gdbm where
270         compatibility functions are in the gdbm_compat library, and on
271         systems with libdb4.
272
273 2005-12-13  Michael Forrest <mef@computer.org>
274
275         * Fedora Bug #163760: sbr/context_read.c (context_read): Ensure that
276         the context is only read once.
277
278 2005-12-12  Josh Bressers <josh@bress.net>
279
280         * uip/sendsbr.c (annoaux): Fix the call to annotate() fixing a bug
281         which prevented repl from properly annotating messages.
282
283 2005-12-07  Jon Steinhart <nmh@fourwinds.com>
284
285         * Fixed a bug where anno -append put the headers in the wrong place
286         if applied to a message that didn't contain any headers.
287
288         * Added a special value of "all" to the -number option that causes
289         anno -delete to delete all matching components instead of just
290         the first one.
291
292         * Added new -preserve and -nopreserve options.  Using -preserve
293         retains the original last accessed and last modified times on
294         annotated messages.
295
296 2005-12-05  Josh Bressers  <josh@bress.net>
297
298         * Fedora Bug #174983: configure.in: Fix the AC_PATH_PROG default when
299         vi isn't found during build.
300
301 2005-11-19  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
302
303         * bug #14977: sbr/context_read.c: special case an MHCONTEXT of
304         "/dev/null" and don't try to lock it.
305
306         * bug #9228, debian bug #146449: man/mh-profile.man: make it clearer
307         that lower case environment variables (and in particular mheditor)
308         are internal to nmh and not intended to be set by the user.
309
310 2005-11-09  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
311
312         * sbr/mf.c: fix buffer overrun with absurdly long addresses
313         (only causes crashes if scan is run with '-width 16536' or similar)
314
315         * bug #7917: sbr/context_foil.c, sbr/context_read.c,
316         sbr/context_save.c: mark 'no context' with NULL rather than
317         "/dev/null" so we don't inadvertently try to lock /dev/null (which
318         takes up to a minute in some locking configurations and makes post
319         very slow).
320
321         * patch #3913: uip/post.c: pass some globals into sm_init() so that
322         it uses SASL if necessary. (This bug was preventing Bcc'd emails
323         from being sent via SASL authenticated SMTP.)
324
325         * bug #9813: uip/rmf.c: don't crash if there's no Current-Folder
326         entry in the context file.
327
328 2005-11-13  Oliver Kiddle  <okiddle@yahoo.co.uk>
329
330         * bug #7833: uip/Makefile.in: remove link to install-mh that caused
331         problems on some systems
332
333         * bug #739: Makefile.in: install target now depends on all to avoid
334         problem on case-insensitive file systems with the INSTALL file
335
336 2005-11-10  Josh Bressers  <josh@bress.net>
337
338         * Fedora Bug #172838: configure.in: Fix the AC_PATH_PROG default when
339         sendmail isn't found during build.
340
341 2005-11-09  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
342
343         * h/aliasbr.h: fix a non-ANSI prototype.
344
345 2005-11-08  Oliver Kiddle  <okiddle@yahoo.co.uk>
346
347         * Simon Burge: acconfig.h, configure.in, uip/rcvtty.c, uip/slocal.c:
348         fix to handle getutent() on NetBSD
349
350         * INSTALL, README, docs/README.about, man/nmh.man: update most
351         references to the web page and mailing list locations
352
353         * bug #10230: etc/Makefile.in, man/Makefile.in, uip/Makefile.in:
354         Michael De La Rue: prepend DESTDIR to install locations
355
356         * configure.in, */Makefile.in, mts/smtp/smtp.c: replace obsolete
357         autoconf macros
358
359 2005-11-06  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
360
361         * sbr/fmt_rfc2047.c, sbr/fmt_scan.c, h/prototypes.h: fix various
362         possible overruns of the buffers in fmt_scan() which would cause
363         crashes if scan was run with '-width 16536' or similar.
364
365         * uip/popsbr.c: fix compile error which only showed up if nmh
366         was configured with --enable-apop.
367
368         * Debian Bug# 245932, RedHat Bug# 172388: uip/mhparse.c: don't
369         crash when handling a multipart MIME message with an invalid
370         Content-Type header (file handle was being fclose()d twice).
371
372         * sbr/Makefile.in: adjust lex command to work on both old and
373         new versions of flex.
374
375         * configure.in: add an AC_PREREQ() so autoconf 2.13 gives a helpful
376         error message and the Debian autoconf-version-guessing wrapper
377         doesn't guess wrongly.
378
379 2005-11-02  Oliver Kiddle  <okiddle@yahoo.co.uk>
380
381         * Debian Bug# 320069: Nick Rusnov: uip/popsbr.c: fail when
382         kpop connection attempted without KPOP support compiled in
383
384         * Debian Bug# 320090: Nick Rusnov: sbr/Makefile.in: fix for newer
385         version of flex and remove autogenerated file from cvs
386
387         * patch #1155: uip/flist.c: speed up flist by skipping stat on
388         files with numbers as names
389
390         * docs/Makefile.in: include new files in distribution
391
392 2005-10-11  Bill Wohler  <wohler@newt.com>
393
394         * docs/FAQ: fold questions into MH FAQ and distribute that instead
395
396 2005-10-05  Oliver Kiddle  <okiddle@yahoo.co.uk>
397
398         * Harald Geyer: h/mh.h, uip/replsbr.c: back out previous change
399         (fork/vfork) and replace with code that handles the issue directly
400
401 2005-05-18  Oliver Kiddle  <okiddle@yahoo.co.uk>
402
403         * Debian Bug# 143485: Nick Rusnov: h/mh.h: use fork instead of
404         vfork on Linux
405
406         * Debian Bug# 261592: Harald Geyer: uip/mhlsbr.c, uip/replsbr.c:
407         test/report error writing to stdout
408
409         * mts/smtp/smtp.c, uip/popsbr.c: correct SASL include file locations
410
411         * docs/COMPLETION-BASH: bash completion definitions from Debian
412
413         * patch #2863: savannah@brisammon.fastmail.fm: sbr/folder_read.c:
414         fix a bug affecting AFS where nmh was setting the READONLY flag
415         for a folder even when you do have write access to the folder
416
417         * Carl Mummert: h/fmt_compile.h, man/mh-format.man,
418         sbr/fmt_compile.c, sbr/fmt_scan.c: add unquote() function for
419         removing quotes from RFC-2822 encoded headers
420
421 2005-02-23  Oliver Kiddle  <okiddle@yahoo.co.uk>
422
423         * use iconv to convert RFC-2047 encoded headers to the
424         character set used by the current locale
425
426         * sbr/folder_read.c fix Debian bug #202667: crash when a
427         message's filename overflows an int when converted
428
429         * Updated config.guess and config.sub to the most recent
430         versions (from automake 1.9.5)
431
432 2005-02-21  Oliver Kiddle  <okiddle@yahoo.co.uk>
433
434         * sbr/getpass.c fix bug where inc crashed on failing to reopen
435         the terminal
436
437 2005-01-27  Oliver Kiddle  <okiddle@yahoo.co.uk>
438
439         * Added -proxy option to inc and msgchk. Based on old patch
440         from Michael Richardson.
441
442         * On systems where it is available, use nl_langinfo to get the
443         character set if MM_CHARSET is unset
444
445 2005-01-21  Oliver Kiddle  <okiddle@yahoo.co.uk>
446
447         * sbr/check_charset.c US-ASCII is a subset of UTF-8 so can be
448         handled directly when UTF-8 is being used
449
450 2004-12-17  Oliver Kiddle  <okiddle@yahoo.co.uk>
451
452         * uip/mhmisc.c Fix -part option to mhshow/mhlist/mhstore to
453         find sub-parts of the specified part
454
455 2004-11-19  Jon Steinhart  <jon@fourwinds.com>
456
457         * h/prototypes.h, sbr/folder_addmsg.c, uip/mhstoresbr.c,
458         uip/rcvstore.c, uip/refile.c: Added mail directory argument to
459         folder_addmsg in order to make it possible to provide a path to
460         the ext_hook call that is mailpath-based.  A problem existed when
461         a folder was a symbolic link and the pwd call would return the
462         path relative to the filesystem, not to mailpath.  A new argument
463         was needed because there was otherwise no reasonable way to get
464         that path.
465
466 2004-11-16  Jon Steinhart  <jon@fourwinds.com>
467
468         * sbr/folder_pack.c: Fixed problem where the refile hook was being
469         called after a message was renamed so that it wasn't around for
470         the hook.  The hook is now called before the message file is
471         renamed.
472
473         * sbr/folder_addmsg.c: Fixed wrong directory for hook when
474         refiling with -src option.
475
476 2004-10-15  Jon Steinhart  <jon@fourwinds.com>
477
478         * uip/sortm.c: Fixed calling of external hooks.
479
480 2004-10-12  Jon Steinhart  <jon@fourwinds.com>
481
482         * uip/inc.c: Fixed another weird bug caused by the static
483         mailpath being overwritten.
484
485         * uip/sendsbr.c: Fixed bug that caused anno to mangle headers.
486
487         * sbr/lock_file.c: Fixed strange bug that prevented a lock from
488         ever being obtained if getting it failed the first time.  The
489         problem was that the string of XXXXXX that is required by
490         mkstemp() was overwritten the first time through, and so all
491         subsequent times failed because mkstemp() failed.  The fix
492         reinitializes the tmp file string.
493
494         * uip/inc.c: Fixed bug in which the static maildir was overwritted
495         if a format string was read from the profile.
496
497         * sbr/folder_delmsgs.c: Fixed bug that was producing an incorrect
498         path for the external hook.
499
500 2003-10-06  Glenn Burkhardt <glenn@aoi-industries.com>
501
502         * uip/slocal.c, configure.in: db configuration fix for Debian; yet
503           another location for ndbm.
504
505 2003-09-30  Glenn Burkhardt <glenn@aoi-industries.com>
506
507         * Fix 'pick' so handling of options "-list" and "-seq" are
508         independent.
509         * Fix 'inc' realloc error when bringing in more than 100 msgs
510         to empty folder.
511         * Patches submitted by Nick Rusnov from Debian archive applied:
512
513         Debian Bug#
514            136976 - Handle binary content messages
515            143427 - mh-format.man typo
516            144098 - 'spost; should have same behavior as 'post'
517                     w.r.t. mts.conf masquerade line
518            149745 - slocal ignores 'N' result of previous command
519            152728 - increase SMTP timeouts to conform to RFC 1123
520                     The timeouts suggested by the RFC seem long
521                     to me - but the RFC is still listed as active.
522            181867 - typo for nmh.man
523         
524 2003-08-10  Jeffrey C Honig  <jch@honig.net>
525
526         * Fix problem where parsing of address/date fields in fmt_compile
527         is optimized to the first instance.  The first instance may be in
528         contitional code which will result in cached data to
529         be used.  Instead, convert c_flags to a flags field from a boolean
530         and parse on the first use.
531         * Remove some unused flag bits.
532
533 Fri Jul 01 22:02:00 2003 Glenn Burkhardt <glenn@aoi-industries.com>
534
535         * Applied fixes for configuration problems with Solaris and
536           systems with gdbm instead of db1 (includes bug #2024)
537         * Fixes for bugs 
538           #578  - repl leaks umask 
539           #1393 - sortm core dumps 
540           #1650 - msh leaks file descriptors
541           #1730 - Double free() in mhfree.c:free_encoding()
542           #3356 - In-Reply-To header in default replcomps should be 
543                   RFC2822 compliant 
544         * Revised man page for mh-format (bug #2031)
545         * New replcomps, etc, with Fcc: +outbox in default versions
546         
547 Sat Mar 17 03:18:15 2001 Dan Harkless <dan-nmh@dilvish.speed.net>
548
549         * Ken Hornstein's configure.in Cyrus SASL checks were doing 
550         `x"$with_cyrus_sasl" != "no"' instead of `... != x"no"'.
551
552 Tue Mar 06 21:04:27 2001 Dan Harkless <dan-nmh@dilvish.speed.net>
553
554         * Found some historical information about MH in RFC 808.
555         Supplemented it with info from Jerry Peek's MH book and added it
556         to docs/README.about.
557
558 Tue Feb 6 20:35:40 2001 Shantonu Sen <ssen@mit.edu>
559
560         * sbr/dtime.c Use the same Y2K correction code as dtimep.lex
561
562         * sbr/dtimep.lex Restrict the parser to accept either
563         a numerical timezone offset, or a symbolic one (e.g. EST),
564         but not both (Since "2000 -400 EDT" might cause a double
565         subtraction of 60 minutes if both are parsed. One should be
566         enough).
567
568 Mon Feb 05 20:22:54 2001 Dan Harkless <dan-nmh@dilvish.speed.net>
569
570         * -L isn't sufficient for specifying the path of the Cyrus SASL
571         shared library.  That'll allow us to link successfully, but on
572         many/most OSes that won't allow us to find libsasl at runtime.  On
573         Solaris, we need to specify the library path with -R as well (or
574         else the user will have to use the $LD_LIBRARY_PATH kludge, which
575         is considered harmful).  This fix should be extended to other OSes
576         as well.
577
578         * Print whether we have SASL support in the "nmh configuration"
579         summary configure prints out.
580
581         * Say in README.developers to use `\date' in case anyone is like
582         me and has `date' aliased in their shell to use a nonstandard (but
583         subjectively more readable) format.
584
585 Thu Jan 25 21:15:52 2001 Shantonu Sen <ssen@mit.edu>
586
587         * man/mh-chart.man has updated synposes of
588         all nmh commands.
589
590 Tue Jan 23 20:26:15 2001 Shantonu Sen <ssen@mit.edu>
591
592         * etc/digestcomps tried to force dates into a
593         19xx when it's not necessary.
594         
595 Fri Jan 19 21:22:08 2001 Shantonu Sen <ssen@mit.edu>
596
597         * First round of manpage updates finished. They
598         are standardized on -man macros, with minimal
599         roff mark-up.
600
601         * man/tmac.h.in is no longer needed, since the
602         manpages do not depend on them anymore. Note:
603         strict "man" programs that didn't allow ".so"
604         sourcing outside the man tree will now format
605         the man pages correctly.
606
607         * man/vmh.1 is no longer built, since uip/vmh isn't
608         
609 Tue Jan 9 6:01:22 2001 Shantonu Sen <ssen@mit.edu>
610
611         * Finished manpages ali-prev
612
613         * Removed deprecated files from the repository.
614         Specifically, those rooted in zotnet/ and mts/sendmail
615         mts/mmdf. "cvs update -dP" will give a pruned directory
616         structure.
617
618         * Updated docs/Makefile.in to include README.manpages, and
619         uip/Makefile.in to include popi.c (which isn't being built,
620         though). This allows "make nmhdist" to create an archive that
621         is file-for-file identical to the current cvs repository.
622
623 Sun Dec 31 20:48:50 2000 Shantonu Sen <ssen@mit.edu>
624
625         * Create docs/README.manpages, which details
626         the formatting rules I've been using.
627
628         * Finished ali-inc.
629         
630 Sat Dec 30 9:50:13 2000 Shantonu Sen <ssen@mit.edu>
631
632         * Created a new file "DATE" to hold the date
633         of the most recent nmh release. This date will be
634         used in the manpages.
635
636         * Updated docs/README.developers to add the step
637         of updating DATE. Also, updated configure to
638         read in the contents of the file as the variable
639         $DATE.
640
641         * Started work on updating man pages, with only
642         ali finished so far. Changes: 1) no dependence
643         on an external macro file, 2) uses only
644         -man macros (although I may be mistaken in this),
645         3) syntax in the SYNOPSIS is a little more
646         in line with standard UNIX documentation, such as
647         bold flags and italicized parameters.
648
649 Sun Dec 24 10:06:30 2000 Shantonu Sen <ssen@mit.edu>
650
651         * Updated INSTALL with information about the
652         --with-locking option.
653
654         * Fixed the Hesiod tests in configure.in. In
655         systems where res_send was in -lresolv, this
656         information was not being communicated to the
657         HESIOD_LIBS var. Now, if res_send is not found
658         in the default libraries, it's assumed to be
659         in -lresolv, and thus -lresolv is appended to
660         HESIOD_LIBS, which will need that to avoid
661         undefined symbols problems.
662
663         * Fixed the Kerberos tests in configure.in. New
664         versions of Kerberos 5 have renamed -lcrypto
665         to -lk5crypto (circa krb5 1.1 or thereabouts). The
666         new test tries to determine if -lk5crypto exists. If so,
667         this is a new krb5 system. If not, test for -lcrypto
668         and the rest of old krb5. If that fails, look
669         for a genuine krb4 installation.
670         
671 Fri Dec 22 22:08:51 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
672
673         * -apop and -noapop were not documented in msgchk.man.
674         -snoop was documented but didn't appear in the usage SYNOPSIS.
675
676 Fri Dec 22 23:42:16 2000 Shantonu Sen <ssen@mit.edu>
677
678         * Made a new ./configure option called
679         "--with-locking" that allows the file
680         locking mechanism to be chosen there instead of
681         requiring a manual edit of config.h.
682
683         * If the option is not explicitly set, or an
684         invalid option is specified, "dot" locking is
685         chosen. Valid options are "dot", "fcntl",
686         "flock", and "lockf". We need a way to tell
687         the user that these are the valid options, and
688         change the flag "--with-locking" if it's not
689         descriptive enough.
690
691 Fri Dec 22 19:21:29 2000 Shantonu Sen <ssen@mit.edu>
692
693         * Remove the lex-specific memory hints at the
694         beginning of sbr/dtimep.lex. We've already
695         committed to supporting flex only, since
696         lex does not easily allow us to parse a single
697         string, as well as other problems documented
698         below and on nmh-workers.
699
700         * Added a switch statement to configure.in to
701         test for Mac OS X. If this is the case, LDFLAGS
702         should not contain "-s" since the linker rejects
703         the flag.
704
705         * Updated MACHINES to include Mac OS X Public Beta,
706         as well as Linux 2.4 running glibc 2.2.
707
708 Wed Dec 20 16:00:46 2000 Shantonu Sen <ssen@mit.edu>
709
710         * Marked deprecated directories in docs/README.developers
711         as deprecated, with pointers to the new code location.
712         Eventually these deprecated directories should go away.
713
714 Tue Dec 19 19:16:37 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
715
716         * -apop and -noapop were not documented in inc.man.  -snoop was
717         documented but didn't appear in the usage SYNOPSIS.
718
719 Thu Dec 14 14:32:09 2000 Shantonu Sen <ssen@mit.edu>
720
721         * Updated config.guess and config.sub to the most recent
722         versions on ftp://ftp.gnu.org/pub/gnu/config, dated
723         12-07-00. This should prevent configure from failing
724         on newer operating systems because config.{guess,sub}
725         couldn't correctly identify them.
726
727 Thu Dec 14 1:30:44 2000 Shantonu Sen <ssen@mit.edu>
728
729         * Fixed the circular dependency created when I moved
730         zotnet/mts to mts/generic and merged them into libmts.
731         mts/generic/client.c and mts/generic/mts.c are now in sbr/
732         (and thus in libmh), which makes libmh self-contained and
733         not depending on an external archive.
734
735         * All include statements now look for mts.h in h/. The
736         Makefiles and configure script have been modified so that
737         mts/generic is no longer built.
738
739 Mon Dec 11 22:08:07 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
740
741         * When Shantonu made the new libmts.a, he swapped $(MTSLIB) and
742         libmh.a in sbr/Makefile.in so that libmh.a comes first, but this
743         causes the build to fail on Solaris, because libmts.a has to get
744         ruserpass() out of libmh.a.  Swapping them back to the way Ken
745         Hornstein's patch (which I applied on Jul 20) put them, with
746         libmh.a correctly coming second.  If there are times when libmts.a
747         needs to come second, then it would appear there's a circular
748         dependency and someone (Shantonu?) did an mts merge incorrectly.
749
750 Fri Sep 8 01:36:23 2000 Shantonu Sen <ssen@mit.edu>
751
752         * Took out bad time textual time zones like BST and JST.
753         I found them online somewhere, but am not sure if they're
754         correct.        
755         
756 Fri Sep 8 00:36:48 2000 Shantonu Sen <ssen@mit.edu>
757
758         * Moved zotnet/mts to mts/generic. This code reorganization
759         makes the entire zotnet tree deprecated -- bboards is unneeded,
760         mf was was moved to sbr, tws was rewritten and moved to sbr, and
761         now finally mts.
762
763         * Created a new static library called libmts.a used during
764         compilation which includes the generic mts code and the
765         smtp/sendmail code. This supercedes the functionality of the
766         old libsmtp.a and the remains of libzot.a.
767
768         * Updated header includes to reference the new location of mts.h
769         in mts/generic/mts.h. Also, update the configure and top-level
770         Makefile not to descend into zotnet. Also, they don't descend
771         into mts/mmdf and mts/sendmail (the sendmail code has been
772         merged into the smtp code).
773
774         * Added #include <h/nmh.h> to h/md5.h, since my compile was
775         complaining about implicitly-declared memcpy and memset, which
776         appear to be in strings.h. In any event, nmh.h should take care
777         of it for us.
778
779         * When doing a "make nmhdist", notice that the generated
780         snapshot does not include zotnet of the mts directories as noted
781         above. Since they are no longer compiled, and I don't see any
782         obvious code path to get to them, end-users should probably
783         not need them. If you think otherwise, turn Makefile generation
784         back on in configure.in and turn on recursion into those dirs
785         in the appropriate Makefile.in
786
787 Wed Sep 6 22:40:03 2000 Shantonu Sen <ssen@mit.edu>
788
789         * Tracked down the problem in the new dtimep where time
790         zones were being radically misreported. It was because the
791         parser knew about military time zones (such as M or E) but in
792         some cases did not know about the textual representation of
793         some zones (like MET). When it encountered one of these, the
794         date parser misread MET as the military time zone T (well, first
795         zone M, then E, and finally T). I took military zones out, and
796         things seem much better. Also, the default behavior of parsing
797         time zones appears to default to GMT in the absence of better
798         info, which is less bogus than assuming the mail came from the
799         current time zone, which was the behavior in 1.04.
800
801 Thu Aug 10 13:22:13 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
802
803         * Decided that limiting the message number columns to 3 on my
804         scan.MMDDYY and scan.YYYYMMDD (to try to regain space taken by
805         extra date info) was ill-conceived.  It's not that tough to get
806         past 999 messages, though I imagine it's rather rare to exceed
807         9999.  Changed these to 4.  Also put the "replied / encrypted"
808         column back in YYYYMMDD -- I've never seen it show anything but a
809         space, but that space is useful if you use scan, grep, and awk
810         (with the default field separator) to grab message numbers (I know
811         -- pick should really be used for these purposes...).
812
813 Mon Aug  7 20:11:09 CEST 2000 Ruud de Rooij <ruud@ruud.org>
814
815         * Modify umask set by mhshow to enable user execute bit, so that
816         viewers that create temporary directories (e.g., lynx) will be
817         able to access them.
818
819 Thu Aug 03 17:14:08 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
820
821         * TODO: Allow multiple simultaneous differing contexts, probably
822         each tied to a parent (terminal) process.
823
824 Tue Aug  1 10:48:05 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
825
826         * Makefile install rules should not look for generated files in
827         the source tree -- this will happen to work when configuring and
828         building inside the source tree but will fail when using an
829         external build tree.  Fixed etc/Makefile.in.
830
831 Mon Jul 24 16:20:45 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
832
833         * When Shantonu wrote the new, more portable dtimep.lex, he left
834         out the #ifdef DSTXXX stuff for some reason.  Not a good idea, as
835         that code is required for proper printing of numeric-offset
836         timezones that have daylight saving time.  Without that code,
837         -0700 during DST gets printed as MST instead of PDT.
838
839         * Renamed DSTXXX as ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST and
840         added an explanatory comment by its #definition.
841
842         * Updated README.developers with the fact that zotnet/tws is going away.
843
844 Thu Jul 20 20:30:52 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
845
846         * Moved Kimmo's new "--with-hash-backup" to be output with the
847         rest of the --with options in the configure --help output.  Also,
848         people did not preserve my alphabetization of the --with options
849         when they added new ones.  Re-alphabetized.
850
851         * One more pass at README.developers now that it's clear that my
852         previously-suggested one-line autoconf-file commit can cause
853         unnecessary local makes and an out-of-sync stamp-h.in file, but
854         would not cause problems for other people using the CVS files.
855
856         * Ken Hornstein's SASL patch was not integrated properly with
857         Ruud's new merged mts/sendmail code.  Kimmo has since fixed nmh so
858         it compiles, but according to Ken, the SASL stuff still does not
859         work.  Integrating a patch from him for this.
860
861         * Last pass at README.developers -- Kimmo's 5-step commit was
862         overkill.  You only need 3 steps, since configure.in is the only
863         autoconf file with the RCS $Id keyword.
864
865         * Applied Kurt J. Lidl <lidl@eng.us.uu.net>'s $MAILHOST patch:
866
867             I have a small patch that would be nice to be included --
868             basically, it allows the usage of the "MAILHOST" environment
869             variable, without having to have HESIOD turned on.  I need
870             this functionality for my environment, where we have identical
871             /usr/local on all my machines (so I cannot just hardcode into
872             the mts.conf file), and I have multiple POP mail servers for
873             my users.
874
875         Modified inc.man to reflect that along with "pophost:" and -host, 
876         $MAILHOST can now activate POP mail inclusion as well.
877
878         * Fixed warnings from diff on first-time install of nmh.  Also
879         added 'echo's clarifying the etc file installation activities.
880
881 Tue Jul 18 19:36:59 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
882
883         * Added the answer to Dan's question in README.developers.
884
885 Mon Jul 17 19:10:36 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
886
887         * Clarified and made some corrections to Kimmo's README.developers
888         changes (BTW, if anyone can explain why the RCS Ids are able to cause
889         problems with the dependencies, please fill in the explanation --
890         I never encountered a problem with the old single-commit method).
891
892 Sat Jul 15 23:13:49 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
893
894         * Add configure option --with-hash-backup so the backup prefix can
895         be easily changed from "," to "#".
896
897         * Simplified sbr/Makefile.in so that it works with any make.
898
899         * Use mkstemp in sbr/lock_file.c.
900
901         * Commits of autoconf-related files apparently can't all be done
902         in one shot due to RCS Ids changing when committing -- updated
903         README.developers.
904
905 Tue Jul 11 14:18:01 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
906
907         * Clarified post.man and send.man for those not completely up on
908         SASL terminology.  "SASL encryption layers are not supported for
909         SMTP" means that encryption is supported for the authentication
910         but not for the subsequent data stream.
911
912 Sat Jul  8 01:36:19 EDT 2000 Kimmo Suominen <kim@tac.nyc.ny.us>
913
914         * Applied Ken Hornstein <kenh@cmf.nrl.navy.mil>'s patches
915         implementing SASL support for POP3 and SMTP.  If nmh is compiled
916         with SASL support, using the -sasl switch on the inc, msgchk,
917         post, and send commands will enable authentication encryption for
918         SMTP, and both authentication and data stream encryption for POP3.
919
920 Sat Jun 10 18:37:59 CEST 2000 Ruud de Rooij <ruud@ruud.org>
921
922         * Merged mts/sendmail functionality into mts/smtp; switching between
923         smtp and sendmail delivery method is now controlled by mts.conf.
924
925         * If tsort cannot deal with loops, in addition to defining tsort as
926         cat, also define lorder as echo.
927         
928         * Removed uip/popi.c from list of sources.
929
930 Thu Jun 08 19:36:57 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
931
932         * New dtimep.lex didn't parse day names properly.  Fixed.  Also
933         clarified ambiguous comments preceding day_map[] array (from old
934         dtimep.lex) that probably led to the erroneous cp++ being added.
935
936 Wed Jun  7 20:52:33 CEST 2000 Ruud de Rooij <ruud@ruud.org>
937
938         * Added one more mkstemp invocation to uip/spost.c (which was in a
939         #if 0 block).
940
941         * Applied patch from Peter Maydell to clean up permissions handling
942         and error handling in uip/inc.c.
943
944 Mon Jun  5 22:10:07 CEST 2000 Ruud de Rooij <ruud@ruud.org>
945
946         * Use cat instead of tsort if tsort cannot deal with loops in its
947         input (which is the case for tsort from GNU textutils).
948
949 Mon Jun  5 21:14:36 CEST 2000 Ruud de Rooij <ruud@ruud.org>
950
951         * If lockfile is present, and its dotlockfile program is setgid,
952         inc does not need to be setgid.
953
954 Sun Jun  4 21:35:40 CEST 2000 Ruud de Rooij <ruud@ruud.org>
955
956         * Added autoconf test for Miquel van Smoorenburg's liblockfile
957         library, as found on Debian systems.
958
959         * Added liblockfile support to sbr/lock_file.c.
960         
961 Wed May 31 7:19:30 2000 Shantonu Sen <ssen@mit.edu>
962         
963         * Fixed up dtimep.lex a bit. Added back memory options for AIX to
964         increase available memory.  Took out %option noyywrap, which
965         wasn't understood by AT&T lex, as well as the -i
966         case-insensitivity flag.
967
968 Wed May 31 07:40:45 2000 Doug Morris <doug@mhost.com>
969
970         * Added a lint target to the Makefiles and a check in autoconf
971         to determine whether lint or lclint exists on the system. 
972
973 Fri May 30 19:21:48 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
974
975         * etc/Makefile.in was incorrectly installing mts.conf.in and
976         sendfiles.in -- fixed.  Generated sendfiles script was not a
977         dependency of the `all' target, and was incorrectly included in
978         the distribution.  Changed the suffix for the backed-up previous
979         versions of the etc files from the ambiguous .old to .prev.  Added
980         call to diff -- only keep the .prev files around if different from
981         the newly-installed versions (intentionally didn't redirect output
982         to /dev/null so you'll notice when your changed versions are
983         getting moved aside).
984
985         * INSTALL never documented the etc/*.old thing.  Documented the
986         new etc/*.prev thing (including a note to watch for diff output).
987
988         * Applied Alec Wolman <wolman@cs.washington.edu>'s dropsbr.c patch:
989
990             In the map_write routine, a call is made to map_open and this
991             call is supposed to set the "clear" variable to 0 or 1,
992             depending on whether the map file is empty or not.  In
993             mh6.8.3, this worked because map_open would set "clear" by
994             calling the mbx_Xopen routine.  In nmh, the code for mbx_Xopen
995             was merged into mbx_open, but the interface for mbx_open
996             doesn't support the clear variable, so that functionality was
997             lost.  The map_open interface still contains "int *clear" in
998             the prototype, but never sets it.
999
1000             My patch eliminates "clear" from the map_open interface (I
1001             checked to make sure that map_write is the only client of
1002             map_open).  Furthermore, my patch also sets the "clear"
1003             variable properly at the beginning of map_write by calling
1004             fstat().  This eliminates the bug in that the value of "clear"
1005             being used later in the routine was just stack garbage.
1006
1007             Having a bad value of clear causes this next bug to be
1008             triggered: The fp file pointer was being opened with fdopen,
1009             but in two of the three switch cases it wasn't being closed.
1010             In certain cases, this was causing packf to run out of file
1011             descriptors if you attempted to pack a large folder.
1012
1013 Mon May 29 7:48:15 2000 Shantonu Sen <ssen@mit.edu>
1014
1015         * Moved the date parsing routines from zotnet/tws to sbr/ (and
1016         tws.h to h/). Updated all source files to reflect to new location
1017         of tws.h.
1018
1019         * Rewrote dparsetime (in dtimep.lex -> dtimep.c) to replace the
1020         old zotnet/tws/dtimep.c, dtimep.lex, lexstring.c, lexedit.c, and
1021         dtimep.c-lexed. It should now work with flex (although untested
1022         with lex), and requires no sed-ing. For now, I have the lexed
1023         version in the distribution, so that end-users don't need to worry
1024         about running it through flex/lex. I have not added back support
1025         for guessing the time zone when it's not specified.
1026         
1027 Sun May 28 17:44:15 CEST 2000 Ruud de Rooij <ruud@ruud.org>
1028
1029         * Added autoconf check for getutent().
1030
1031         * Changed uip/rcvtty.c and uip/slocal.c to use getutent() and
1032         friends.  Since I can only check on Linux, please check if
1033         this works on other systems.
1034
1035 Sun May 28 14:58:49 CEST 2000 Ruud de Rooij <ruud@ruud.org>
1036
1037         * Applied patch from Peter Maydell to uip/scansbr.c for more
1038         checks for write failures.
1039
1040         * Unlink temporary file properly in uip/rcvtty.c.
1041
1042         * Moved viamail from bindir to libdir.
1043
1044         * Changed sendfiles into sendfiles.in, so that path to viamail
1045         is patched in.
1046
1047         * Added gzip support to sendfiles.
1048
1049         * Added References header to replcomps and replgroupcomps.
1050
1051 Sun May 28 14:39:31 CEST 2000 Ruud de Rooij <ruud@ruud.org>
1052
1053         * Fixed m_getfld bug which caused segmentation faults when
1054         incorporating messages which ended in multiple linefeeds crossing
1055         a buffer boundary.
1056
1057 Fri May 26 13:21:59 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1058
1059         * msh has been unable to show MIME messages ever since 1.0.  Alec
1060         Wolman <wolman@cs.washington.edu> tracked down the problem to the
1061         -show flag being passed to mhshow.  mhshow is equivalent to the
1062         old mhn -show, so we don't need the -show anymore.  Removed it.
1063
1064 Fri May 12 02:51:21 2000 Shantonu Sen <ssen@mit.edu>
1065
1066         * zotnet/bboards is not longer built by default. Goal is to move
1067         the assorted functions in zotnet into sbr or some more logical
1068         place.
1069
1070         * Moved zotnet/mf to sbr, and changed mf.h references accordingly,
1071         as well as Makefiles.
1072         
1073 Thu May 11 02:21:34 2000 Shantonu Sen <ssen@mit.edu>
1074
1075         * Simplified sbr/Makefile.in so that both SRCS and OBJS aren't
1076         seperately and redundantly defined, but so that OBJS is a
1077         pattern-substituted version of SRCS with suffix .c -> .o. This
1078         should make maintainability easier.
1079
1080         * Added section to MACHINES indicating what platforms nmh is known
1081         to compile and work on, just to give users peace of mind, or
1082         something. This is by no means complete or exhaustive, so add
1083         whatever you know works.
1084         
1085 Tue May 09 20:38:04 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1086
1087         * Alphabetized Shantonu's $pop_kinds output on configure's "pop is
1088         enabled" line.  If POP3 is the only kind of POP enabled, say so,
1089         rather than just saying "yes" (which is ambiguous).
1090
1091         * Fixed four warnings in Shantonu's new getpass.c.  Needed to
1092         #include <stdlib.h> for calloc(), <unistd.h> for ttyname(), and
1093         "h/mh.h" for adios().  Also changed ch from char to int to get rid
1094         of "comparison is always 1 due to limited range of data type" on EOF.
1095
1096         * Added steps to README.developers saying to change the version
1097         number to X.Y.Z+dev.  Did a little rearranging and changed the FTP
1098         dir from /home/ftp to /var/ftp to reflect Doug's new machine.
1099
1100         * Changed configure.in to use gcc -Wall even without
1101         --enable-debug, to prevent developers compiling optimized from
1102         introducing warnings, and to give end-users a warm, fuzzy feeling
1103         as they (hopefully) see no warnings come out (except perhaps on
1104         the lex output file) even with -Wall.
1105
1106         * Renamed getpass() to nmh_getpass() since the prototype for
1107         getpass() varies from OS to OS, and we want to _always_ use our
1108         version of the function.  Fixed all the callers to use
1109         nmh_getpass() and added it to prototypes.h.  Semi-arbitrarily
1110         upped MAX_PASSWORD_LEN from 128 to 256.  buf was being calloc()'d
1111         and the memory leaked -- should have just been declared as static
1112         char array.  Prepended "Portions of this code are" to the
1113         copyright message, as this version has been changed significantly
1114         from the BSD version.
1115
1116         * Added "nmh-local functions to use in preference to OS versions"
1117         section to README.developers (currently just says to use
1118         nmh_getpass() instead of system getpass()).
1119
1120         * Prepended "Portions of this code are" to the copyright message
1121         in ruserpass.c also.
1122
1123         * Added mts.conf.5 page per Neil W Rickert <rickert+nmh@cs.niu.edu>'s
1124         report:
1125         
1126             This happens on solaris:
1127
1128                      % man mts.conf
1129                      windex entry incorrect:  mts.conf(5) not found.
1130                      No manual entry for mts.conf.
1131
1132             It is fixed by
1133
1134                      % echo ".so man5/mh-tailor.5" > mts.conf.5
1135
1136             done in the man5 directory.  We need to add 'mts.conf.5' as a
1137             reference sourcing mh-tailor.5.
1138         
1139 Mon May 08 23:51:55 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1140
1141         * Doug informed me that the way I had restored the "lost" version
1142         histories was wrong, because `cvs checkout's of old versions of
1143         nmh wouldn't work properly.  It occurs to me that this could be
1144         fixed by simply deleting those tags in the new-location *,v files,
1145         but oh well.  I'm putting everything back to the way Doug
1146         originally had it.  To get the old version history for a file that
1147         used to be in the top directory, you'll need to "blindly" do a
1148         `cvs log' there (even though you won't have a local copy of the
1149         file in that directory).  `cvs diff' will no longer be able to
1150         diff pre-move versions vs. post-move versions -- you'll have to do
1151         a lot of manual gyrations with `cvs checkout' and then use `diff'.
1152
1153         * I had alphabetized the --configure options in the --help output
1154         awhile back, but Shantonu added --enable-apop just under
1155         --enable-pop.  Put it in alphabetical order and clarified what
1156         --enable-apop does vs. --enable-pop and --with-krb4.  Also changed
1157         --with-mts help line from "mail transport agent" to "mail
1158         transport agent/service" so the 's' in "mts" doesn't seem to come
1159         out of nowhere.
1160
1161         * Added two steps to "releasing nmh" in README.developers.  After
1162         making the tarball, it's a good idea to diff the tree vs. the CVS
1163         tree to make sure no files got left out, and then to chown the
1164         files so that they're owned by root, preventing a Trojaning attack
1165         by a malicious remote user with a UID matching yours.
1166
1167         * Changed DIFFERENCES to say that RPOP is not currently supported
1168         rather than implying it by saying that APOP, KPOP, and POP[3] are.
1169
1170 Sun May 07 18:16:43 2000 Shantonu Sen <ssen@mit.edu>
1171
1172         * Imported NetBSD version of getpass() and made extensive
1173         revisions for compatibility with programs that pipe the password
1174         to stdin, such as exmh.
1175
1176         * Removed tests for system ruserpass() which sometimes gave
1177         phantom positive results. Also, bext to use internal functions if
1178         we ever want to change .netrc format to something else, or access
1179         other files.
1180
1181 Sat May 06 08:28:09 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1182
1183         * Restored lost version histories for those moved files by doing a
1184         manual `mv' in the CVSROOT on mhost.  CVS badly needs a `cvs mv'
1185         command so that you can move files (without having physical access
1186         to the CVSROOT) without losing versioning.  Put MACHINES back at
1187         the top level as it needs to be read before building.  Fixed DIST
1188         variable in {.,docs}/Makefile.in to reflect that and to add
1189         missing entry for "INSTALL" file.
1190
1191 Sat May 06 13:13:07 2000 Doug Morris <doug@mhost.com>
1192
1193         * Re-cleaned up nmh documentation (by moving things to docs
1194         subdir) and modified Makefile & configure.in to handle the change.
1195
1196 Mon Apr 17 21:28:40 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1197
1198         * Scott Blachowicz pointed out that the configure --help output
1199         for --enable-masquerade was misleading.  Clarified.
1200         
1201 Mon Apr 17 19:01:00 2000 Shantonu Sen <ssen@mit.edu>
1202
1203         * APOP support can be compiled in to inc and msgchk using
1204         --enable-apop.
1205
1206         * To access an APOP host, specify -apop on the command line
1207         along with any -host or -user option.
1208
1209 Fri Apr 14 23:10:44 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1210
1211         * Upped the version number to 1.0.4+dev until the next nmh release.
1212
1213         * Added a "releasing nmh" section to README.developers, while the
1214         process was fresh in my mind.
1215         
1216 Fri Apr 14 18:21:34 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1217
1218         * Added new files README.developers, ChangeLog_MH-3_to_MH-6.6, and
1219         ChangeLog_MH-6.7.0_to_MH-6.8.4.html to DIST target in Makefile.in.
1220         
1221         * Released nmh-1.0.4.
1222
1223 Tue Apr 11 21:37:03 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1224
1225         * Applied Brian Campbell <bacam@tardis.ed.ac.uk>'s mhn.defaults.sh
1226         patch:
1227
1228             It appears that there shouldn't be quotes around the %s in the
1229             iso-8859-1 charset entry; xterm passes the remaining arguments
1230             to the program, quoting them means that xterm thinks they're
1231             part of the program's name.
1232
1233         This %s isn't the same as the "Insert content subtype" one from
1234         mhshow-show-* -- it doesn't come from MIME headers and is safe not
1235         to quote.
1236
1237 Sun Apr 09 13:03:59 2000 Doug Morris <doug@mhost.com>
1238
1239         * added check in fmt_compile() to handle a single-character
1240         format string. fmt_compile() depends on having an array of
1241         format characters with an empty item at the end. A
1242         single-character format would cause programs using this
1243         function to segfault because the algorithm used to decide on
1244         the length of the array mistakenly created a single-item array
1245         when the format string was one character. This eventually
1246         caused problems when the program attempted to test item+1
1247         in the array.
1248
1249 Thu Apr 06 21:53:50 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1250
1251         * Richard Coleman threw out a lot of old MH-specific files in nmh.
1252         Much of the stuff, indeed, is not worth saving, but there are
1253         nuggets that are very worthwhile, and should probably be added
1254         back in.  Most important, IMHO, are the MH change logs, as they
1255         can help answer questions like "Why is this code like this?" or
1256         "How long has this been broken?" or "What was this ever used for?"
1257
1258         I've added a new file to the nmh tree called
1259         ChangeLog_MH-3_to_MH-6.6.  It's cobbled together from the
1260         mh-6.8.4/papers/mh*/MHCHANGES files.  I've re-ordered the entries
1261         to go from newest at the top to oldest at the bottom to match the
1262         ChangeLog convention.  Unfortunately there are no change logs for
1263         versions of MH prior to 3 in the MH tar files available at
1264         <ftp://ftp.ics.uci.edu/pub/mh>.  Also, it appears to me that there
1265         are MH-6.6 changes that aren't documented in the logs.
1266
1267         I've also added ChangeLog_MH-6.7.0_to_MH-6.8.4.html.  This is
1268         based on mh-6.8.4/papers/changes/mh-changes.ms.  The nroff format
1269         and its "catman"-type output are a pain to deal with, but I was
1270         loath to throw away the formatting, so I converted the file to
1271         HTML.  The only actual markup in the body are the "<B>" and "<U>"
1272         tags, and "&lt;" and "&gt;" instead of '<' and '>', so it's quite
1273         doable to view the file in plain ASCII mode as well.  Note that
1274         some of the changes this file documents as having been made in
1275         MH-6.8.4 may not be present in nmh -- Richard started with 6.8.3
1276         and later put in certain 6.8.4 stuff.
1277         
1278 Wed Apr 05 21:09:28 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1279
1280         * Applied Eric Schnoebelen <eric@cirr.com>'s mhshowsbr.c patch
1281         fixing apparent bugs in Dan Winship's new security quoting code:
1282         
1283             Since upgrading, I've been getting the following errors
1284             while attempting to process some MIME messages:
1285
1286                 (1) Syntax error: Unterminated quoted string
1287                     exit 2
1288         
1289             and:
1290
1291                 (2) line 1/10 (END)Segmentation fault (core dumped)
1292
1293             (2) appears to be due to the testing of an unset pointer in
1294             mhshowsbr.c:show_multi_aux().  (1) appears to be caused by
1295             mis-quoting a filename being handed to the shell in
1296             mhshowsbr.c:show_content_aux().
1297
1298             Resolving the pointer reference issue in
1299             mhshowsbr.c:show_multi_aux() turned up a similar mis-quoting
1300             problem in the routine.
1301
1302 Tue Mar 28 16:17:39 2000 Doug Morris <doug@mhost.com>
1303
1304         * Applied Todd.Miller@courtesan.com's patch to dropsbr.c to
1305         prevent core dumping on packf. Here's the note from his message:
1306
1307             Since sizeof(buffer) == sizeof(tmpbuffer) packf will dump
1308             core on a file w/o a From line with a line >= BUFSIZ.
1309             I noticed this because I had a junk file in my mail
1310             spool somehow.
1311
1312 Fri Mar 17 11:59:33 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1313
1314         * wesley.craig@umich.edu did not document his previous KPOP patch,
1315         so I did so, and asked him to check what I wrote.  Unfortunately
1316         he didn't notice my misunderstanding of his patch.  I wrote that
1317         if you #define POPSERVICE "kpop", inc and msgchk will use KPOP
1318         exclusively, but if you leave it as "pop3", you can use Wesley's
1319         new -kpop switch on a given invocation.  Instead, however, -kpop
1320         turned out to be necessary on every invocation, and a KPOP user
1321         complained.  Applied Wesley's new patch, which makes things work
1322         like I thought his original patch did.  After that, did one more
1323         clarifying pass to the documentation in inc.man and msgchk.man.
1324
1325 Wed Mar 15 18:45:45 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1326
1327         * When I fixed the long-standing makedir() bugs in January, I had
1328         the code call strtoul(..., 0), which I believed to be safe as all
1329         modes specified as ASCII constants in the nmh code started with a
1330         leading zero (signifying octal), which I did as it would work if
1331         internal constants were ever changed to hex.  Unfortunately I was
1332         unaware of the "Folder-Protect:" .mh_profile entry, which
1333         mh-profile.man documents as an octal-only constant, with no
1334         leading zero required.  I've changed the strtoul() call to an
1335         atooi() call and removed the misleading leading zeroes on the
1336         ASCII octal constants in the code and man pages.  Also changed the
1337         "Folder-Protect:" example in the man page to something more
1338         interesting than a duplication of the default.
1339
1340         * When I added my --enable-masquerade option, you'll note that I
1341         didn't make it --enable-nmh-masquerade.  I find the --enable-nmh-*
1342         options too wordy and I'm not sure why Richard went that route.
1343         I've renamed them to just --enable-*, but the old versions will
1344         still work as well (they just aren't advertised).
1345
1346         * Added a line to the "nmh configuration" output saying whether
1347         POP is enabled.
1348
1349         * Added a new README.developers file.  From the file:
1350
1351             This file is intended to provide a few tips for anyone doing
1352             development on nmh.  Developers who learn things "the hard
1353             way" about the nmh codebase (as opposed to local info best
1354             encoded in a comment) are encouraged to share their wisdom
1355             here.
1356
1357         Currently the topics are "autoconf files" and "directory structure".
1358
1359 Tue Mar 14 12:41:48 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1360
1361         * Applied, after some finessing,
1362         Simon Burge <simonb@thistledown.com.au>'s --with-smtpservers patch:
1363
1364             Here's a patch that allows you to add
1365
1366                     --with-smtpservers=<some.host.name>
1367
1368             to the ./configure command line to set the "servers: " line in
1369             etc/mts.conf.  Around here, we use "mailhost" so that all
1370             machines in the current domain just talk to a central machine
1371             and nothing else runs an MTA.  Now, I can use
1372
1373                     --with-smtpservers=mailhost
1374
1375             instead of having to remember to fix this by hand (and often
1376             forgetting to do so!).
1377
1378         * Inspired by Simon's patch, added an --enable-masquerade option
1379         to configure.  It will set the "masquerade:" line of mts.conf.
1380         You may specify a subset of the three types of masquerading, like
1381         --enable-masquerade="draft_from mmailid", or leave off explicit
1382         arguments to enable all three types.
1383
1384         * Alphabetized the --enable and --with options in configure.in and
1385         INSTALL and added documentation of the two new options to the latter.
1386
1387         * Added new dependency for mts.conf: Makefile.  If this isn't
1388         done, then when you reconfigure nmh with new values for
1389         --enable-masquerade or --with-smtpservers, you'll fail to get an
1390         updated copy of mts.conf.
1391
1392         * Applied Simon Burge <simonb@thistledown.com.au>'s dtimep.lex patch:
1393
1394             It seems that some MUA's didn't handle y2k very well - ELM
1395             seems to be one of them, and Ultrix's DXmail (based on MH!).
1396             I've got a few emails this month that look like:
1397
1398                     575   Jan 00  Xxxxxx Xxxx       3603  ...
1399             and
1400                      22+  Jan 00  Xxx Xxxxx         1771  ...
1401
1402             The first has "15 Jan 100" as the date and the second has 
1403             "19 Jan 00" as the date.  The following works around this so 
1404             that scan, show, sortm, etc work ok.
1405
1406         I put Simon's patch under the control of a new #define called
1407         FIX_NON_Y2K_COMPLIANT_MUA_DATES.  There's some commentary in
1408         acconfig.h about when you might not want to #define it.
1409
1410         * Created new dtimep.c-lexed with Simon's change using dtimep.lex
1411         lexed on Solaris 2.6.  Added missing dependency in
1412         zotnet/tws/Makefile.in for dtimep.c: dtimep.c-lexed.
1413
1414         * Added scan.MMDDYY and scan.YYYYMMDD format files.
1415
1416 Mon Mar 13 21:32:00 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1417
1418         * Applied Sullivan N. Beck <sbeck@cise.ufl.edu>'s mhshow-suffix patch:
1419
1420             With the patch below, you can add lines like:
1421
1422                 mhshow-suffix-application/msword: .doc
1423                 mhshow-suffix-application/PostScript: .ps
1424
1425             to the mhn.defaults file to append the given suffix to a
1426             scratch file.  This allows applications which require a
1427             certain suffix to run properly.
1428
1429         * Removed -force_html from lynx entry in mhn.defaults.sh (I
1430         believe older versions of lynx lack that option) and added
1431         "mhshow-suffix-text/html: .html".
1432                 
1433         * Modified username_extension masquerading to only use the
1434         extended address on generated [Resent-]From: lines and SMTP
1435         envelope From:.  With Neil's original implementation, nmh's global
1436         idea of the username was changed, which would result in inc lying
1437         and saying you had no new mail because it was looking for a
1438         mailbox called, for instance, "dan-nmh" (where username was "dan"
1439         and $USERNAME_EXTENSION was "-nmh").
1440                 
1441         * Applied Simon Burge <simonb@thistledown.com.au>'s dtime.c patch:
1442         
1443             There's a wrap-around problem that affects the implementation
1444             of Zeller's congruence in dtime.c.  This causes the day-of-week
1445             calculations to fail for dates after Feb 29, 2000 (probably up
1446             until some year far in the future).
1447
1448 Mon Mar 06 12:20:20 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1449
1450         * Applied Neil W Rickert <rickert+nmh@cs.niu.edu>'s msh.c patch:
1451
1452             I finally tracked down the problem in msh that was causing
1453             errors whenever I tried to examine a 'mmdf' style mailbox.
1454
1455             It turns out that not enough memory was being allocated with
1456             calloc(), causing memory pointers to be overwritten and
1457             corrupted.
1458                 
1459 Fri Mar 03 16:07:33 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1460
1461         * Changed the new "plussed_user" option to mts.conf's
1462         "masquerade:" to "username_extension" after getting feedback from
1463         qmail users, who use '-' as a separator rather than '+'.  Removed
1464         checking of $USERPLUS variable.  Now check $USERNAME_EXTENSION,
1465         which needs to include the appropriate separator for your MTA
1466         ('-', '+', or whatever) as its first character.
1467                 
1468 Thu Mar 02 23:04:30 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1469
1470         * Added a new "boolean" type to mh.h and TRUE and FALSE constants.
1471                 
1472         * Added a note to DIFFERENCES stating that it's out-of-date
1473         (Richard was the last one to update it) and that we should
1474         consider only documenting incompatibilities with MH there.
1475
1476         * Implemented (and documented) a third kind of username
1477         masquerading: "plussed user" masquerading.  This one was suggested
1478         by Neil Rickert <rickert+nmh@cs.niu.edu>.  It's based on sendmail's
1479         "plussed user" feature, where mail sent to <user>+<string> will be
1480         delivered to <user>.  When it's enabled, it's controlled by the
1481         $USERPLUS environment variable.  How is it enabled?  Well, that
1482         leads me to:
1483
1484         * Renamed the "mmailid:" setting in mts.conf to "masquerade:", and
1485         changed it so that rather than being a boolean, it can be set to
1486         any combination of the three values "draft_from", "mmailid", and
1487         "plussed_user".  Thus it is now possible to enable the three types
1488         of masquerading individually.
1489
1490         * Fixed a bug with "mmailid" masquerading (dating back to MH?)
1491         where if it was turned on, ','s would no longer be considered
1492         GECOS field delimiters.
1493         
1494 Wed Mar 01 23:30:50 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1495
1496         * Changed the GECOS-field '&' translation behavior to be
1497         controlled by the BSD42 #define rather than GCOS_HACK, since it's
1498         apparently always appropriate on OSes where BSD42 is #defined, and
1499         never appropriate on any other OSes.  Thanks to Kimmo Suominen for
1500         responding to my "What is this code here for?" comment in mts.c
1501         and explaining the feature.
1502         
1503 Mon Feb 28 21:50:29 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1504
1505         * Upped the version number to 1.0.3+dev (ideally this should be
1506         done by whoever makes a release tar file, immediately after doing
1507         so).
1508         
1509         * Applied Paul Fox <pgf-spam@foxharp.boston.ma.us>'s scansbr.c
1510         patch, posted to comp.mail.mh, which he says prevents loss of mail
1511         when inc'ing into a full filesystem.
1512
1513         * Changed "echo > stamp-h.in" in Makefile.in to "date > stamp-h.in"
1514         so that stamp-h.in will be different each time configure.in and
1515         related files are changed, making it easier to check it in (which
1516         is necessary to prevent unnecessary autoconf calls).
1517
1518         * My declaration of initgroups() in slocal.c to eliminate the "no
1519         prototype" warning wasn't portable (FreeBSD 3.[23] choked).  Now
1520         use AC_EGREP_HEADER to see where initgroups() is declared, if
1521         anywhere.
1522
1523 Sun Feb 20 12:17:15 2000 Ruud de Rooij <ruud@ruud.org>
1524
1525         * Fix security hole in mhshowsbr.c which allowed untrusted shell
1526           code to be executed.
1527         
1528         * Released nmh 1.0.3.
1529
1530 Thu Feb 10 10:54:36 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1531
1532         * Oops.  %-escapes on mhstore lines in mhn.defaults.sh should not
1533         be surrounded by single quotes, as a shell is not spawned when
1534         just saving files, and the filenames will end up with literal
1535         quotes embedded in them.
1536
1537 Fri Feb 04 12:29:12 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1538
1539         * Whoever originally added the -help switch to all the commands
1540         got too cute and had the option itself print out as "-(help)" in
1541         the -help output.  One theory is that they were making reference
1542         to the fact that clearly you know about the -help option since
1543         you're currently looking at its output.  I think it's a bad idea
1544         to overload the meaning of the parentheses, however -- they're
1545         supposed to indicate what abbreviated prefix of the switch you're
1546         allowed to specify.
1547
1548         The other theory is that because you can say something like
1549         "mhstore -" and get "mhstore: - ambiguous.  It matches" followed
1550         by the same list of switches you get with -help, they were saying
1551         you can "sorta" abbreviate "-help" as "-".  You don't get the
1552         "Usage:" string, though, so it's not really the same thing.
1553
1554 Thu Feb 03 17:52:01 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1555
1556         * Applied wesley.craig@umich.edu's KPOP patches.  According to him:
1557
1558               The following patch fixes a problem with requesting a
1559               service key for a machine that has multiple 'A' records.  It
1560               also makes "-kpop" a command line option, for users who
1561               would like to use both "kpop" and "pop".
1562
1563         Did no testing of the new features, as I don't have access to a
1564         KPOP server.
1565
1566         * Modified inc.man and msgchk.man to document Wesley's new -kpop.
1567
1568         * Modified INSTALL and config.h.in to reflect the new -kpop feature.
1569
1570 Fri Jan 28 17:39:24 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1571
1572         * All %-escapes in mhn.defaults that actually expand to something
1573         should be surrounded by single quotes.  Added quotes to the ones
1574         in mhn.defaults.sh that were missing them.
1575
1576         * Added check for lynx to write mhshow-show-text/html line in
1577         mhn.defaults.sh.
1578
1579 Thu Jan 27 12:22:25 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1580
1581         * makedir() had multiple bugs dating back to MH.  An octal
1582         constant was apparently being interpreted as decimal, resulting in
1583         directories with no user read or execute permissions, making
1584         nested directory creation fail.  And there wasn't even an
1585         _attempt_ to set desired permissions (e.g. from "Folder-Protect:"
1586         in .mh_profile) on the outer directories of a nested directory.
1587
1588         * A second `make install' would always fail because the check for
1589         whether mh_profile.5 existed was written incorrectly.
1590         
1591 Wed Jan 26 02:22:00 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1592
1593         * Added documentation on both types of masquerading to post's man
1594         page.
1595
1596 Tue Jan 25 22:58:12 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1597
1598         * Doug's portability fix of my setgid inc autodetection had a
1599         caching bug -- if you re-ran configure, uip/Makefile would be
1600         corrupted, and installation would bomb out on OSes where inc needs
1601         to be setgid.
1602
1603         * Implemented a new kind of email address masquerading.  Usually,
1604         when a user writes a custom "From:" header in a draft, nmh uses it
1605         rather than generating one.  However, the user's true address is
1606         used in the SMTP envelope "From:" and is revealed in the "Sender:"
1607         header.  Now, when mmailid is set to non-zero, the envelope
1608         "From:" uses the address specified in the draft "From:" header,
1609         and there is no "Sender:" header.  This is useful when sending on
1610         behalf of a remote POP3 account or when remote mail robots
1611         incorrectly use the envelope "From:" in preference to the body
1612         "From:".  This processing has only been implemented for post, not
1613         for the undocumented spost (which was already missing some "From:"
1614         processing that post has).
1615
1616 Mon Jan 24 22:26:06 2000 Dan Harkless <dan-nmh@dilvish.speed.net>
1617
1618         * Got rid of the rest of the gcc -Wall warnings that I didn't have
1619         time for on 1999-07-15 (and, it would seem, some new ones people
1620         introduced since then).  The primary ones were the warnings that
1621         default prototypes were being used for [v]snprintf() and
1622         str[n]casecmp().  As of right now, there are _no_ compilation
1623         warnings except on dtimep.c-lexed (at least under AIX 4.1.5 and
1624         Solaris 2.6).
1625
1626 Sun Jan 2 23:42:18 2000 Ruud de Rooij <ruud@ruud.org>
1627
1628         * Move mhtest from bindir to libdir.
1629
1630         * Move sendfiles from libdir to bindir.
1631
1632         * Updated sendfiles manpage to reflect this change.
1633
1634         * Added documentation for -build and -file switches to repl and 
1635           forw manpages (patch from Peter Maydell).
1636
1637         * Fixed interaction between specifying -cc in profile and -group on 
1638           command-line.
1639
1640 Tue Nov 1 13:48:10 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
1641
1642         * Changed the version number from 1.0.3 to 1.0.2+dev.  There was
1643         not unanimous support for my proposed even/odd release/developer
1644         version number dichotomy.  1.0.2+dev implies release 1.0.2 plus
1645         some development.
1646
1647 Fri Oct 29 13:42:51 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
1648
1649         * Upped the version number to 1.0.3.  If we don't do this, then
1650         when people report bugs against 1.0.2, we won't know "which" 1.0.2
1651         they're talking about (since the development source is publically
1652         available via CVS).  I think the Linux kernel version numbers are
1653         a good model, so the next time we roll a tarball, it should be
1654         version 1.0.4 (or higher -- anyhow, an even-numbered version).
1655
1656 Fri Oct 29 06:41:08 1999 Doug Morris <doug@mhost.com>
1657
1658         * Released nmh-1.0.2.
1659
1660 Tue Oct 26 22:57:00 1999 Doug Morris <doug@mhost.com>
1661         
1662         * Added check for whether "libtool" is in fact gnu libtool. If
1663         it is, it is not used. This is the wrong behavior. If vendor
1664         XYZ later on decides to create yet another libtool, we'll be
1665         caught again. This works for now.
1666
1667         * Minor updates to MACHINES refering to Mac OS X.
1668
1669 Thu Oct 21 20:45:37 1999 Doug Morris <doug@mhost.com>
1670
1671         * Added check for "libtool" (a ranlib type tool for Mac OS X)
1672         and modified Makefiles so that nmh will build under Mac OS X.
1673
1674 Sun Oct 17 08:28:56 1999 Ruud de Rooij <ruud@ruud.org>
1675
1676         * Changed repl defaults to partly revert to MH behaviour,
1677           "-cc all" is now only implied with -group.
1678
1679         * The replcomps template includes cc: header again (as in MH).
1680
1681         * Updated repl man page to reflect these changes.
1682
1683 Sat Oct 16 02:57:47 1999 Doug Morris <doug@mhost.com>
1684
1685         * Tweaked configure to handle Solaris and SunOS after the BIND
1686         changes. Both need more cleanup.
1687
1688 Sat Oct 16 00:17:36 1999 Doug Morris <doug@mhost.com>
1689
1690         * Removed BIND define and replaced it with a check for
1691         gethostbyname (to determine if the host is DNS aware) and a
1692         check for sethostent. This appears to be the right thing to
1693         do, but there is no explanation of the reasoning behind the
1694         BIND define in the code and it appears to have been used for
1695         multiple purposes. 
1696
1697 Wed Oct 13 15:53:53 1999 Doug Morris <doug@mhost.com>
1698
1699         * Updated manpages Makefile to link mh-profile.5 to
1700         mh_profile.5 after installation. Suggestion from Richard Cohen
1701         <richard@jubjub.demon.co.uk>.
1702
1703         * Modified configure.in to check for _IO_write_ptr and libio.h
1704         to determine whether to define LINUX_STDIO instead of using 
1705         config.guess.
1706
1707 Mon Oct 4 15:22:46 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
1708
1709         * Added '-L' to the calls of 'ls' in configure.in -- I have seen
1710         multiple machines in the past where the mail spool was a symlink
1711         to a directory on another device with more free space.
1712
1713 Fri Oct 1 22:36:56 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
1714
1715         * Fixed a portability problem in Doug's fix of a portability
1716         problem in my MAILGROUP autoconf support ('ls -l' vs. 'ls -lg'). 
1717
1718 Sat Sep 25 18:40:43 1999 Ruud de Rooij <ruud@ruud.org>
1719
1720         * Added config.sub and config.guess to the list of files to be
1721         distributed.
1722
1723         * Fixed bug in sbr/fmt_scan.c where an extra newline would be
1724         added if a list of addresses was split over several header lines.
1725
1726         * In mts/smtp/smtp.c, undefine strlen and strcpy if they are
1727         macros, regardless of platform.
1728
1729         * Allow q to quit mhshow, and n to skip to next part.  Patch from
1730         Kimmo Suominen <kim@tac.nyc.ny.us>.
1731
1732         * Modified mhstore to recognize attachments created by sendfiles
1733         with x-conversions=gzip.
1734
1735 Mon Sep 13 21:20:10 1999 Doug Morris <doug@mhost.com>
1736
1737         * added explicit cast to long from time_t for tclock in
1738         post.c.
1739
1740         * Commented out #ifdefs for <sys/ioctl.h> in termsbr.c since
1741         it's needed for ioctl() anyway. This prevents a warning about
1742         implicit definition of ioctl().
1743
1744         * Moved guesses performed by AC_CANONICAL_SYSTEM back into the
1745         "User Configuration" section of config.h (moved @TOP@ in
1746         acconfig.h) so they're easier to find, should someone actually
1747         want to mess with them.
1748
1749 Sun Sep 12 15:50:34 1999 Doug Morris <doug@mhost.com>
1750
1751         * updated Makefile.in so it recognized COMPLETION-TCSH and
1752         COMPLETION-ZSH (only used in make nmhdist). 
1753
1754         * added prototype for ruserpas to <h/prototypes.h>. Fixes
1755         warnings in mhparse.c and mhbuildsbr.c.
1756
1757         * added include checks for <time.h> and <sys/time.h> to
1758         prevent warnings in fmt_compile.c, fmt_scan.c, lock_file.c,
1759         sendsbr.c, mhbuildsbr.c, mhcachesbr.c, picksbr.c, and post.c.
1760
1761         * added include for <zotnet/mts/mts.h> to ali.c, scan.c, ap.c,
1762         rcvdist.c, rcvstore.c, rcvtty.c, and spost.c to remove
1763         warnings about implicit definition of mts_init().
1764
1765         * added <grps.h> to slocal.c to prevent warnings about
1766         function initgroups.
1767
1768         * added <h/signals.h> to prevent warning about missing SIGNAL
1769         function.
1770
1771         * added function prototypes to smtp.c, whatnowproc.c,
1772         mhbuildsbr.c, mhparse.c, mshcmds.c, show.c, whatnow.c, mhl.c
1773         to fix warnings.
1774
1775         * explicitly declared mbx_style in mshcmds.c and lused in
1776         fmtdump.c as type static int instead of just static to
1777         prevent warnings.
1778         
1779         * various code cleanups to prevent ambiguous statements
1780         (brackets for if/thens and parens for complicated if
1781         statements).
1782
1783
1784 Sun Sep 12 09:19:27 1999 Doug Morris <doug@mhost.com>
1785
1786         * commented out _cleanup() in mf.c because it's the only
1787         location in all of the source code where it exists. It was
1788         preventing compilation on at least linux.
1789
1790         * Added check for <db1/ndbm.h> which is the new location where
1791         linux systems appear to be stuffing this header file.
1792
1793 Thu Sep 09 23:15:49 1999 Doug Morris <doug@mhost.com>
1794
1795         * fixed varous mkstmep bugs introduced in 1.0.1 by me. Whups!
1796
1797         * added mh_profile SEGV patch from Richard Cohen
1798         <richard@jubjub.demon.co.uk> that prevents crashing when
1799         mh_profile doesn't end in a newline. A similar patch was
1800         previously sent in by Andrew Bettison <andrewb@zip.com.au>.
1801
1802         * fixed bug in associated with MAILGROUP #define (group "mail"
1803         is not universal) -- hard to believe, but true.
1804
1805 Tue Sep 7 16:47:03 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
1806
1807         * Renamed ZSH.COMPLETION to COMPLETION-ZSH and added COMPLETION-TCSH.
1808
1809 Tue Aug 17 16:06:29 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
1810
1811         * Automated #define of MAILGROUP and installation of inc as setgid mail
1812         when the mail spool directory isn't world-writable.
1813
1814 Thu Jul 15 18:37:07 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
1815
1816         * slocal -debug used to leave a file in /tmp for each message
1817         processed.  Very bad for folks with slocal -debug in their .forward!
1818
1819         * Got rid of a ton of compilation warnings.  Most were "junk"
1820         warnings due to the use of gcc -Wall (without -Wno-parentheses),
1821         but a few represented real bugs.  There remain many warnings to be
1822         tackled that are due to missing function prototypes (e.g. snprintf()).
1823
1824         * Default rcvdistcomps no longer puts a copy of all outgoing
1825         messages in outbox.  Added an rcvdistcomps.outbox that does.
1826
1827 Sat Jun 09 12:22:47 1999 Doug Morris <doug@mhost.com>
1828
1829         * Updated configure to check for mkstemp (available on OpenBSD) and 
1830         substitute it for mktemp if available. 
1831
1832 Thu May 13 16:40:19 1999  Doug Morris <doug@mhost.com>
1833
1834         * Added config.sub and config.guess and updated acconfig.h and
1835         configure.in to automatically detect system type and set the
1836         proper #defines.
1837
1838 Wed May 12 23:41:33 1999  Dan Winship  <danw@mit.edu>
1839
1840         * Released nmh-1.0.1.
1841
1842 Fri May  7 17:18:28 1999  Dan Winship  <danw@mit.edu>
1843
1844         * Fixed flist to properly deal with relative folder names.
1845         Problem noted by Jerry Peek <jpeek@jpeek.com>.
1846
1847         * Fixed --with-krb4 to work with original Kerberos 4 libraries as
1848         well as the Kerberos 5 compat libraries. Based on a patch from
1849         Assar Westerlund <assar@sics.se>.
1850
1851         * Added a check in configure.in to test if modf is in libc and
1852         link with libm if not. This is needed by at least Digital UNIX. 
1853         Problem pointed out by Kevin Oberman <oberman@es.net>.
1854
1855         * Fix a bug from the "mhn -show" to "mhshow" renaming that
1856         made the "list" command in whatnow not work for some users.
1857         From Ruud de Rooij <r.c.m.derooij@twi.tudelft.nl>.
1858
1859         * Replaced "extern int errno" with "#include <errno.h>" in a
1860         number of files. Suggested by Stephen Wilson Bailey
1861         <swb@nconnect.net>.
1862
1863         * Fixed a problem in how "packf -mbox" translated "Return-Path:"
1864         lines. From Kimmo Suominen <kim@tac.nyc.ny.us>.
1865
1866         * Fixed a segmentation fault in inc. Patch originally from Ruud de
1867         Rooij <r.c.m.derooij@twi.tudelft.nl>.
1868
1869         * Allow display of 8bit encoded messages. From Kimmo Suominen
1870         <kim@tac.nyc.ny.us>.
1871
1872         * Fixed repl to not add line breaks in the middle of long
1873         addresses when building a reply. From Ruud de Rooij
1874         <r.c.m.derooij@twi.tudelft.nl>.
1875
1876         * Added -library switch to spost so it can parse user aliases like
1877         post does. From Ruud de Rooij <r.c.m.derooij@twi.tudelft.nl>.
1878
1879         * Changed configure.in's check for sigsetjmp to properly deal
1880         with systems like Linux where it is a macro. From
1881         <elleron@servtech.com>.
1882
1883         * Fixed a bug in whatnow that could cause it to sometimes exit
1884         without prompting the user. Based on a patch by Richard Geiger
1885         <rmg@netapp.com>.
1886
1887         * Added code to deal with SIGPIPE in mhl so it doesn't print
1888         "Broken pipe" if you quit out of the moreproc.
1889
1890         * Documentation: Added a note to MACHINES about Irix make. Added a
1891         pointer to the online copy of the MH book in INSTALL. Added
1892         some additional information to the whatnow and packf man pages,
1893         suggested by Jerry Peek <jpeek@jpeek.com>.
1894
1895         * Updated INSTALL, FAQ, etc to not refer to Richard as the
1896         maintainer or math.gatech.edu as the home any more.
1897
1898 1999-02-06  Richard Coleman  <coleman@math.gatech.edu>
1899
1900         * Released nmh-1.0.
1901
1902         * Merged mbx_open and mbx_Xopen in dropsbr.c.  Fixed
1903           mbx_open so that the mode of zero length maildrops
1904           would not be changed.
1905
1906         * Replaced the substitute version of snprintf() with the
1907           one from the Apache web server.
1908
1909         * Changed to default mode for creating new messages to 0600
1910           (this should have been done a long time ago).
1911
1912         * Changed "flist" to handle searching for multiple sequences
1913           for each folder.  Also flist will now correctly split
1914           Unseen-Sequence if it consists of multiple sequences.
1915
1916         * Added new switches `-unlink' and `-nounlink' to "refile".
1917
1918         * Added new switches `-unlink' and `-nounlink' to "rmm".
1919
1920         * More cleanups of slocal output.  Changed adorn() to
1921           send to stdout, instead of stderr (to match rest of
1922           verbose printing).
1923
1924         * Merged mbx_create() into mbx_open, so that creating and
1925           opening a nonexistent maildrop is done atomically.  This
1926           removes a bad race condition.
1927
1928         * Fixed bug that caused slocal to be unable to save to MMDF
1929           style drop file.
1930
1931         * Added new wrapper function usr_folder() to slocal.c to
1932           handle adding message to folder (currently, it still uses
1933           usr_pipe() to call rcvstore).
1934
1935         * seq_list() checks for empty folder before scanning for
1936           sequence information.
1937
1938         * num_digits() in flist.c and folder.c now returns correct
1939           value for 0.  Also added sanity check.
1940
1941         * folder_delmsgs() now correctly decrements internal message
1942           count.
1943
1944         * Don't attempt to read sequence information if folder
1945           is empty.
1946
1947         * Split seq_read into seq_public and seq_private.
1948
1949         * Small change to sigmsg.awk, since newer versions of gawk
1950           interpret 034 as octal.
1951
1952         * In flist, don't scan for sequence information in empty folder.
1953
1954         * Updated mhn.defaults.sh to output profile entries for mhshow,
1955           mhstore, and mhbuild.
1956
1957         * Changed configuration parameter "mhn-access-ftp" to
1958           "nmh-access-ftp".  Updated man pages
1959
1960         * Moved the code in InitMultipart to reverse the order of the
1961           parts in a multipart, into its own function "reverse_parts()".
1962
1963         * Changed code in mhbuildsbr.c to store unencoded content
1964           in the c_cefile structure when building.
1965
1966         * Changed code in mhoutsbr.c to look for unencoded content
1967           in the c_cefile structure when outputing message.
1968
1969         * Changed configuration parameter "mhn-cache" and
1970           "mhn-private-cache", to "nmh-cache" and "nmh-private-cache",
1971           since it is used in mhstore, mhlist, and mhshow.  Updated man pages
1972
1973         * Change configuration parameter "mhn-storage" to
1974           "nmh-storage", since it is now used in mhstore, mhlist,
1975           and mhshow.  Updated man pages
1976
1977         * Add autoconf support for KPOP (kerberized pop).
1978
1979         * Add autoconf support for Hesiod.
1980
1981         * Split routines to output a message given a Content structure
1982           (output_message, output_content, write7Bit, etc..) to a new
1983           file "mhoutsbr.c".
1984
1985         * Split output_content(), into output_content() and build_headers().
1986
1987         * Changed copy_some_headers() in mhstoresbr.c, to use the linked
1988           list of header fields, rather than reopening the message.
1989
1990         * Added free_header() to mhfree.c to free structures containing
1991           header field information.
1992
1993         * Changed get_content() to use the linked list of header fields
1994           when parsing the various MIME headers (Content-XXX).
1995
1996         * Changed get_content() to store linked list of header field
1997           values when parsing a content.
1998
1999         * Changed mhbuild, mhn, mhlist, mhshow, mhstore, to use the
2000           routines in mhcachesbr.c to handle the content cache.
2001
2002         * Split various funtions (find_cache, find_cache_aux, find_cache_aux2,
2003           cache_content) into new file mhcachesbr.c.
2004
2005         * More calls to sprintf/strcpy (primarily in mhparse.c
2006           and mhbuildsbr.c) converted to snprintf/strncpy.
2007
2008         * When a message is displayed with `mhshow', it is now
2009           removed from the "unseen" sequence.
2010
2011         * Change the default "showmimeproc" to "mhshow".
2012
2013         * Split "mhn -show" off into separate command "mhshow".
2014
2015         * Split "mhn -store" off into separate command "mhstore".
2016
2017         * Split "mhn -list" off into separate command "mhlist".
2018
2019         * Add sanity checks to context_find(), context_replace(),
2020           and context_del(), to abort if context file hasn't been
2021           read.
2022
2023         * Add calls to context_read(), to the beginning of all nmh
2024           commands (instead of being called indirectly by context_find).
2025
2026         * Changes the "substitute" version of vsnprintf/snprintf for
2027           operating systems without native versions, to just call the
2028           native vsprintf(), and ignore the buffer length.   This is
2029           faster, but less secure than the previous version that used
2030           temporary files.  This should only be a problem for systems
2031           which do not have a native snprintf(), and require `inc' to
2032           be setuid/setgid.
2033
2034         * Lots more calls to sprintf/strcpy converted to snprintf/strncpy.
2035
2036         * Changes client() routine to take additional parameter, which is
2037           the buffer length of the parameter "response".  Then added
2038           buffer length checks for this parameter.
2039
2040         * Changed getws() to get_fields(), since that is apparently the
2041           name of a wide character version of gets() on some archetitures.
2042
2043         * Lots of sprintf/strcpy calls converted to snprintf/strncpy.
2044
2045         * Change the code in most of the commands that take multiple
2046           message names/sequences/ranges on the command, such that
2047           the msgs array is expanded dynamically.  This removes most
2048           of the limits on the length of command lines.
2049
2050         * Add additional parameter to copyip(), to specify the
2051           maximum number of strings that can be copied (security
2052           fix).
2053
2054         * Create new function getarguments(), to massage the argument
2055           vector before parsing it (add any arguments from your
2056           profile to the beginning of the argument vector).  This
2057           also removed the general limit on the number of command line
2058           arguments.
2059
2060 1998-07-04  Richard Coleman  <coleman@math.gatech.edu>
2061
2062         * Released nmh-0.27.
2063
2064         * Added a new command "delete", that is available during
2065           a "whatnow" session.  It is equivalent to "quit -delete".
2066
2067         * Added another parameter to editfile (in whatnowsbr.c),
2068           that controls whether editfile should remember the last
2069           program that was exec'ed.  This way the whatnow command
2070           "mime", will not be re-executed if "edit" is later given
2071           with no arguments.
2072
2073         * Changed whatnowsbr.c, so that whatnow doesn't abort if
2074           mhbuild returns an error.
2075
2076         * Added parameter to sendsbr(), so you may specify whether to
2077           rename the draft file.
2078
2079         * Pass delay time to splitmsg() as a parameter, rather than
2080           use a global variable.
2081
2082         * Moved code to rename draft file after sending message from
2083           splitmsg and sendaux, to sendsbr.
2084
2085         * Removed all the code in viamail to split messages and then
2086           mail them.  Replaced this with the standard sendsbr.c routines.
2087
2088         * Changed sendsbr(), so that when splitting messages into
2089           messages of type "message/partial", the header fields that
2090           are copied are more compliant with RFC-2046.
2091
2092         * Fixed mhbuild to track temporary files better.  They are
2093           now correctly removed when mhbuild aborts.
2094
2095         * Created a new man page for "sendfiles".  The information
2096           about "mhn -viamail" in the "mhn" man page was moved to
2097           this new page.
2098
2099         * Changed the name of the "viamail" shell script to
2100           "sendfiles".  Modified "sendfiles" to use the new
2101           viamail program.
2102
2103         * Moved the functionality for "mhn -viamail" out of mhn,
2104           and into a separate executable called "viamail".
2105
2106         * When storing MIME contents to a folder using mhn -store,
2107           they are now accumulated in a temporary file, and then added
2108           to the folder using folder_addmsg().
2109
2110         * Moved code to save content to a folder from store_content
2111           to new function output_content_folder.
2112
2113         * Moved code to save content to file from store_content to
2114           new function output_content_file.
2115
2116         * Moved code to parse storage format string from store_content
2117           to new function parse_format_string.
2118
2119         * Fix copy_some_headers() in mhstoresbr.c, so that the
2120           correct header fields in the first enclosing message/partial
2121           will be copied (according to RFC2046), when using mhn -store
2122           to reassemble messages of type message/partial.
2123
2124         * Fixed bug to openFTP() in mhparse.c, that caused the
2125           tmp file to not be removed, when transferring a
2126           message/external file from ftp.
2127
2128         * Moved the code in mhparse.c to process -auto switch (scan
2129           contents for the attribute "name"), to a new function
2130           "get_storeproc" in mhstoresbr.c.
2131
2132         * Moved routines to free data structures related to MIME
2133           content from mhparse.c and mhbuildsbr.c, to new file
2134           mhfree.c.
2135
2136         * Moved code to show/display MIME content into new
2137           file mhshowsbr.c.
2138
2139         * Moved code to store MIME content from into
2140           new file mhstoresbr.c
2141
2142         * Moved code to parse MIME content into new
2143           file mhparse.c.
2144
2145         * Moved code to list information about MIME content
2146           into new file mhlistsbr.c.
2147
2148         * Move part_ok(), type_ok(), content_error(), flush_errors(),
2149           and set_endian() to new file mhmisc.c.
2150
2151         * Start to isolate the code to show, list, and store MIME
2152           messages.  One side effect is that only one flag (-show,
2153           -list, or -store) can be used at a time now.
2154
2155         * mhn -store -auto wasn't storing file in correct directory.
2156
2157         * Removed a few dead variables from sbr/ruserpass.c
2158
2159         * move code for creating tmp files, and renaming the
2160           the composition draft in mhbuild, from build_mime()
2161           to main().
2162
2163         * remove left-over code in mhbuild.c, mhbuildsbr.c, for
2164           the -[no]auto switch (which isn't used in mhbuild).
2165
2166         * split mhn.c into mhn.c and mhnsbr.c (name later changed
2167           to mhparse.c).
2168
2169         * split mhbuild.c into mhbuild.c and mhbuildsbr.c.
2170
2171 1998-05-25  Richard Coleman  <coleman@math.gatech.edu>
2172
2173         * Released nmh-0.26.
2174
2175         * Added (unlisted) options [no]dashstuffing to send, post,
2176           and whatnow to determine whether to do RFC934 quoting
2177           (dashstuffing) for encapsulated BCC messages.  The default
2178           is still the same (dashstuffing).
2179
2180         * Changed the undocumented feature "nodashmunging" in forw
2181           and mhl, into the documented feature "nodashstuffing".  The
2182           default for forw, is still "dashstuffing" for backward
2183           compatibility, although I don't believe that bursting
2184           RFC934 digests is very common anymore.
2185
2186         * Added an option to define REALLYDUMB in the default config.h.
2187           But it is not on by default.
2188
2189         * moved creation of config file mts.conf from zotnet/mts
2190           to etc.  This simplified the Makefile in zotnet/mts.
2191
2192         * simplified directory support/general to etc.
2193
2194         * removed unneeded directory support/bboards.
2195
2196         * split getusername() into getusername() and getuserinfo().
2197
2198         * Changed getusr() routine to getusername().
2199
2200         * Slight cleanup in folder_pack.c on code that records the new
2201           number of the "cur" message when packing.
2202
2203 1998-05-08  Richard Coleman  <coleman@math.gatech.edu>
2204
2205         * Released nmh-0.25.
2206
2207         * Change install process, so that hard linking the correct mts
2208           library to libmts.a, is not necessary.  The final link process
2209           uses the original name of the library.
2210
2211         * Fixed bug in flist.c and folder.c, so that symbolic links which
2212           point to directories, will not decrement the number of directory
2213           links remaining.
2214
2215         * Split the function list_content (in mhn.c and mhbuild.c) into
2216           list_content and list_debug.
2217
2218         * Don't pack (folder -pack) an empty folder.
2219
2220         * Exit gracefully in flist.c, if no sequence is specified,
2221           and no "Unseen-Sequence" is given in nmh profile.
2222
2223 1998-02-27  Richard Coleman  <coleman@math.gatech.edu>
2224
2225         * Released nmh-0.24.
2226
2227         * Small clarification to the man page for `ali'.
2228
2229         * Fix bug in inc.c so that if both flags `-file' and `-truncate'
2230           are given, that order doesn't matter.
2231
2232         * Fix bug in seq_list.c when realloc'ing for
2233           large sequence line.
2234
2235 1998-02-23  Richard Coleman  <coleman@math.gatech.edu>
2236
2237         * Released nmh-0.23.
2238
2239         * Add new section on "Transfer Encodings" to man page for mhbuild.
2240
2241         * In mhbuild.c, split compose_content into compose_content
2242           (parse and execute composition string), and scan_content (scan
2243           content, decided transfer encoding, check for clash with boundary
2244           string).  I did a good amount of rearranging of this code.
2245
2246         * Moved definitions for data structures for parsing MIME
2247           messages from mhn.c and mhbuild.c to a new include
2248           file h/mhnsbr.h.
2249
2250         * Small amount of rearranging in sendsbr.c
2251
2252         * Small changes to MAIL.FILTERING file.
2253
2254         * Add the file MAIL.FILTERING to nmh distribution.
2255
2256         * Add line to packf so that if message begins with
2257           "X-Envelope-From:" field, it is converted to "From ".
2258
2259         * Fix packf to add "From " line to beginning of message,
2260           even if Return-Path doesn't exist.
2261
2262         * Add note to MACHINES file that on Linux, configure
2263           doesn't find the functions sigsetjmp/siglongjmp.
2264
2265         * Fix configuration for machines that don't have (or find)
2266           sigsetjmp/siglongjmp.
2267
2268 1998-02-11  Richard Coleman  <coleman@math.gatech.edu>
2269
2270         * Released nmh-0.22.
2271
2272         * Add a configure check for sigsetjmp.  Add some conditional
2273           #define's in h/signals.h in case it's not found.
2274
2275         * Added additional notes about -auto switch in mhn man page.
2276
2277         * Added note about MM_CHARSET environment variable to
2278           mh-profile(5) man page.
2279
2280         * Fix signal problem in mhn.c (change setjmp/longjmp to
2281           sigsetjmp/siglongjmp).
2282
2283 1998-02-09  Richard Coleman  <coleman@math.gatech.edu>
2284
2285         * Released nmh-0.22-pre1.
2286
2287         * Changed the first line in mhl.format from
2288           " -- using template mhl.format -- " to a blank line.
2289
2290         * Added note about automimeproc to mh-profile man page.
2291
2292         * Reorganize the main entry point for parsing a MIME message
2293           or file in mhn.  Add new function parse_file() as new main
2294           entry point for parsing MIME files.
2295
2296         * Add note to mhn man page, that "mhn -file -" will accept the
2297           source message on the standard input.
2298
2299         * Changed a sanity check in folder_realloc that was too strict.
2300
2301         * -norfc934mode is now the default for mhbuild,
2302           rather than -rfc934mode.
2303
2304         * Fix mhbuild, so that Content-Description and RFC-822 comments
2305           from #forw directive will be correctly included if there is
2306           only one message.
2307
2308         * Change mhn to correctly default parts of multipart/digest to
2309           message/rfc822 (leftover code from rfc934mode was removed).
2310
2311         * Restore HP specific code to zotnet/tws/lexstring.c.  Apparently
2312           it is still needed.
2313
2314 1998-02-06  Richard Coleman  <coleman@math.gatech.edu>
2315
2316         * Released nmh-0.21.
2317
2318         * If the file given to mhbuild is "-", then accept the draft on
2319           standard input, and output the MIME message to standard output.
2320
2321         * Cleaned up code in mhbuild.c that decides what transfer
2322           encoding to use.
2323
2324         * Cleaned up code in mhbuild.c that decides what character set
2325           to use for text contents.
2326
2327         * Removed old hpux specific code from zotnet/tws/lexstring.c
2328
2329 1998-02-02  Richard Coleman  <coleman@math.gatech.edu>
2330
2331         * Released nmh-0.21-pre2.
2332
2333         * Added the "decode" variable to mhl.format and mhl.header.
2334
2335         * Added new variable "decode" to mhlsbr.c to decode text in
2336           header fields as per RFC-2047.
2337
2338         * Make sure that when decoding RFC-2047 header fields, that any
2339           spaces at the ends of the encoded text are not ignored, but the
2340           spaces between encoded word are.
2341
2342         * Removed #ifdef's for MIME.  MIME support is always compiled in.
2343
2344         * scan/inc will now decode both Subject and From lines as
2345           RFC-2047 encoded header fields.
2346
2347         * Added new function write_charset_8bit() to sbr.  It returns
2348           the character set to use for 8bit text in composition draft.
2349           Changed mhbuild to use this function.
2350
2351         * Split mhn man page into man pages for mhn and mhbuild.
2352
2353         * mhn -show will only now only use default method for content
2354           of type plain, if it is NOT a part of a multipart/alternative.
2355
2356         * Split mhn -build into mhbuild.  Did some code cleanup.
2357
2358         * Added support for %(decode) to fmtdump.c.
2359
2360         * check_charset() now accepts US-ASCII as a subset of any
2361           ISO-8859-X character set.
2362
2363         * Changed the default "showproc" to mhl, instead of the
2364           pager more.
2365
2366         * When reading file into mhn composition file, only need read
2367           permissions, not write permissions.
2368
2369         * Added own version of strcasecmp to distribution, since
2370           nmh calls it frequently with NULL pointers (ughh).
2371
2372         * Replaced uleq.c with strcasecmp.  Removed uleq.c from
2373           distribution.
2374
2375 1998-01-22  Richard Coleman  <coleman@math.gatech.edu>
2376
2377         * Released nmh-0.21-pre1.
2378
2379         * If a message is missing charset parameter to text/plain, show
2380           will assume US-ASCII, rather than just calling showmimeproc.
2381
2382         * Change show.c and mshcmds.c to use check_charset to see if text
2383           message contains valid character set.
2384
2385         * Added new scan format file "scan.nomime" to support/general
2386           that doesn't do any RFC-2047 decoding.
2387
2388         * Modified all the scan format files in support/general to do
2389           RFC-2047 decoding of Subject field.
2390
2391         * Did more work on sbr/fmt_rfc2047.c, so that it will correctly
2392           ignore whitespace between two valid encoded words, but not
2393           between an encoded word and normal text.
2394
2395         * Created new file sbr/check_charset.c.  Moved code from
2396           fmt_rfc2047.c to check for valid character set to this file.
2397
2398         * Added format escape %(decode) to decode contents of "str" register
2399           as a RFC-2047 header field.
2400
2401         * The command install-mh now recognizes the switches -version
2402           and -help.
2403
2404         * Added a new argument to print_help.c to decide whether to
2405           print profile entries (needed for install-mh to prevent weird
2406           loops).
2407
2408         * Changed folder_read.c and folder_realloc.c so that mp->lowoff
2409           is initialize to max (mp->lowmsg, 1) rather than always 1.
2410
2411         * Changed macros for sequence/attribute manipulation so that
2412           message status array doesn't need to always start at 1.
2413
2414         * Small cleanups in folder_realloc().
2415
2416 1998-01-09  Richard Coleman  <coleman@math.gatech.edu>
2417
2418         * Released nmh-0.20.
2419
2420         * Added configure option --with-pager=PAGER.
2421
2422         * Added configure option --with-editor=EDITOR.
2423
2424         * Changed the default format file for mhl (mhl.format) to
2425           also ignore (not display) the header fields Content-Type,
2426           Content-Transfer-Encoding, and Content-ID
2427
2428         * Fixed core dump in addrsbr.c when using %(proper) format function
2429           and the To: line was missing.
2430
2431         * Added the file ZSH.COMPLETION to the distribution.
2432
2433 1998-01-04  Richard Coleman  <coleman@math.gatech.edu>
2434
2435         * Released nmh-0.20-pre2.
2436
2437         * Added new switch -snoop to both `msgchk' and `inc', so you can
2438           watch the POP transaction.
2439
2440         * Changed "replgroupcomps" to check for Mail-Followup-To header
2441           first, and use it if available.
2442
2443         * Changed "replcomps" to check for Mail-Reply-To header
2444           first, and use it if available.
2445
2446 1998-01-03  Richard Coleman  <coleman@math.gatech.edu>
2447
2448         * Released nmh-0.20-pre1.
2449
2450         * Changed seq_list.c to dynamically enlarge the buffer for
2451           collecting the message ranges in a long sequence line.
2452           This should remove the last hard limit on the size of a
2453           sequence line.
2454
2455         * Changed seq_read.c so that can read long sequence lines.
2456           It will use multiple calls to m_getfld() when m_getfld()
2457           returns the state FLDPLUS.
2458
2459         * Changed brkstring.c to dynamically add more space for pointers
2460           if necessary.  This is needed when splitting up large sequence
2461           lines.
2462
2463         * Did some small cleanups in seq_save.c.
2464
2465         * Added new switches `-[no]unseen' to rcvstore, to control
2466           whether new messages are added to Unseen-Sequence.
2467
2468         * Moved locking routines (zotnet/mts/lock.c) to sbr/lock_file.c
2469
2470         * Changed the internal UNSEEN flag to SELECT_UNSEEN which is
2471           more appropriate.  Changed the MHPATH flag to ALLOW_NEW.
2472
2473         * Changed "replcomps" to not include CC and TO lines so that
2474           that reply message is only directed at the author of the
2475           message to which you are replying.
2476
2477         * Added new switch `-group' to command repl, which causes repl
2478           to use new forms file "replgroupcomps".  This is intended for
2479           making group replies.
2480
2481         * Removed #ifdef for ATHENA.
2482
2483 1997-12-28  Richard Coleman  <coleman@math.gatech.edu>
2484
2485         * Released nmh-0.19.
2486
2487         * Fix repl,forw so that switch `-form file' will not abort
2488           as ambiguious (silly mistake on my part).
2489
2490         * Cleaned up the mhn man page.  Added info about a few escapes
2491           for the formatting/display strings that were not documented
2492           (%%, %t).  Moved the BNF grammar for the mime composition file,
2493           to the end of the man page.
2494
2495         * Added the options -[no]format to the command repl.  The
2496           switch `-format' will filter the message to which you are
2497           replying with the standard message filter "mhl.reply", which
2498           is now included in the distribution.  The `-noformat' option
2499           will negate the use of -format or -filter and not include
2500           the message to which you are replying in the draft.
2501
2502         * Did some cleaning and reorganization on many of the man
2503           pages.
2504
2505         * Added debugging switch `-debug' to mhparam, which displays
2506           the values of all `procs' (and some other misc configuration
2507           info) that nmh keeps in global variables.
2508
2509         * When using `refile -preserve', if a conflict occurs, then use
2510           the next available number above the message number you wish
2511           to preserve.
2512
2513         * In forw.c, split the code for creating MIME style forwarding
2514           out of copy_draft, and into copy_mime_draft.
2515
2516         * Move routines in mark.c to print sequences, into new
2517           file sbr/seq_print.c
2518
2519         * flist will now update the current folder.
2520
2521         * Added the switches -[no]fast to flist, to replace
2522           -[no]total.  The previous switches are still accepted
2523           but now undocumented.
2524
2525         * More reorganization in flist of the code for
2526           traversing folders.
2527
2528         * The command "flist +foo -all" will now scan the folder
2529           "foo" and all its 1st level children.
2530
2531         * Add missing include file <h/mh.h> to sbr/snprintf.c
2532
2533         * Fix alarm bug in rcvtty, so that when it calls external
2534           process, the alarm is never longer than 30 minutes.
2535
2536 1997-12-17  Richard Coleman  <coleman@math.gatech.edu>
2537
2538         * Released nmh-0.18.
2539
2540         * Fixed bug in mark, so that "mark -list -seq foo" will
2541           correctly indicate if "foo" is a private sequence.  I found
2542           this bug mentioned in Jerry Peek's book.
2543
2544         * Simplified the code in seq_setcur(), since seq_addmsg() now
2545           retains the public/private status of sequences.
2546
2547         * Changed sequence handling so that if the switches -public
2548           or -nopublic, are not specified for the commands mark, pick,
2549           or rcvstore, then existing sequences will retain their
2550           previous public/private status.
2551
2552         * mhparam now handles the mh-sequences profile entry
2553           correctly.
2554
2555         * flist -all will now also check readonly folders (for
2556           private sequences).
2557
2558         * Improve the leaf optimization for folder command.
2559           It will now track the number of directories in a folder,
2560           and stop stat'ing files once it has hit all the subfolders.
2561
2562         * Renamed m_getfolder to getfolder.  Changed getfolder to
2563           take option to determine whether it should get current
2564           folder, or just default folder (Inbox).  Changed rcvstore,
2565           inc, and rmf to use the new getfolder.
2566
2567         * flist now indicates if a sequence is private.
2568
2569         * Change WUNTRACED to 0, in pidwait.c, so that commands will
2570           wait for stopped processes.
2571
2572         * conflict will dynamically allocate space for group names,
2573           so it can now handle system with more than 100 groups.
2574
2575 1997-12-09  Richard Coleman  <coleman@math.gatech.edu>
2576
2577         * Released nmh-0.18-pre4.
2578
2579         * Check if we have enough message status space, before we
2580           call folder_realloc() in burst, mhpath, and m_draft().
2581
2582         * mhn will now correctly identify a formatting string of "-"
2583           for the option -store, and send content to stdout.
2584
2585         * Change the way that memory for message status is
2586           allocated.  It is dynamcially allocated separately from
2587           the folder/message structure.  This required changing
2588           folder_read.c, folder_realloc.c, folder_free.c.
2589
2590         * Removed all the MTR code (experimental code for message
2591           status allocation).
2592
2593         * Renamed m_readfolder.c to folder_read.c and simplified
2594           the code.
2595
2596         * Renamed m_freefolder.c to folder_free.c.
2597
2598         * Add function trim() to slocal.c to pretty print
2599           the debugging output.
2600
2601         * Changed the name of m_packfolder() to folder_pack().
2602           Changed the name of m_remsg() to folder_realloc().
2603
2604 Wed Dec  3 23:33:38 1997  Richard Coleman  <coleman@math.gatech.edu>
2605
2606         * Released nmh-0.18-pre3.
2607
2608         * Changed installation to add `flists' which is hard linked
2609           to `flist'.  This is a equivalent to `flist -all'.
2610
2611         * For flist, -showzero is on by default.
2612
2613         * Major changes to flist.  Default is now for flist to search
2614           current folder.  The switch `-all' is now used to specify
2615           searching all top level folders.  The new switch `-showzero'
2616           is used to print out folders that don't contain any messages
2617           in the given sequence.
2618
2619         * Split BuildFolderList in flist.c into 2 functions
2620           (BuildFolderList, BuildFolderListR).  Changed these functions
2621           so that flist now does better leaf optimization, and will stop
2622           stat'ing directory entries when it knows it has hit all the
2623           subdirectories of a given directory.
2624
2625         * Reorganized code in folder.c, so that all relevant folders
2626           are scanned first and information recorded.  Then all the
2627           folder summaries at printed out at one time.
2628
2629         * Made the options of folder(s) more orthogonal.  Now
2630           "folder -all -noheader -nototal" will do the right thing.
2631
2632         * Added `-noall' switch to folder, for completeness.
2633
2634         * Changed the default mode for creation of new folders
2635           to 0700 (was 0711).
2636
2637         * Slightly changed the format for flist.  It now indicates
2638           if a folder is current.  Also the width of the various
2639           fields are now calculated at runtime.
2640
2641         * Changed the format for folder(s).  Folder names
2642           are now left justified.  The width of the various fields
2643           are calculated at runtime.
2644
2645 Sun Nov 30 19:14:53 1997  Richard Coleman  <coleman@math.gatech.edu>
2646
2647         * Released nmh-0.18-pre2.
2648
2649         * Add paragraph to man page for install-mh and to INSTALL file
2650           about checking for global mh.profile.
2651
2652         * Renamed m_find() to context_find().
2653           Renamed m_replace() to context_replace().
2654           Renamed m_delete() to context_del().
2655           Renamed m_update() to context_save().
2656           Renamed m_getdefs() to context_read().
2657           Renamed m_foil() to context_foil().
2658
2659         * Change rcvstore to use routine folder_addmsg(), instead of
2660           adding message to folder itself.
2661
2662         * Changed refile, so that if the switch -preserve is used,
2663           and a conflict occurs for a particular folder, then folder_addmsg()
2664           will just use next highest available number for that folder,
2665           instead of exiting.
2666
2667         * Make folder_addmsg() more robust.  It will make repeated
2668           attempts to link file into folder if link returns with
2669           the error EEXIST.
2670
2671         * Fix bug, so that that if forking sendmail, HELO will be sent
2672           unless clientname: option is defined but empty (so now it
2673           is the same as the direct smtp code).
2674
2675         * Changed sprintb to snprintb (now we pass the buffer length
2676           to new routine).  Changed code to use new function.
2677
2678         * Added snprintf to sbr. Added configure check to build it
2679           if you don't have a native version (but haven't changed much
2680           code to use it yet).
2681
2682 Thu Nov 13 18:42:18 1997  Richard Coleman  <coleman@math.gatech.edu>
2683
2684         * Released nmh-0.18-pre1.
2685
2686         * Fixed alarm bug in slocal, so that alarm is never
2687           called with a value larger than 30 mintues.
2688
2689         * Fixed race condition in rmm and refile, so that
2690           context is updated before external rmmproc is called.
2691
2692         * Removed all the OVERHEAD code.
2693
2694         * Move code to add message to folder from refile.c
2695           to folder_addmsg.c
2696
2697 Fri Jul 25 19:39:29 1997  Richard Coleman  <coleman@math.gatech.edu>
2698
2699         * Did some rearranging of the internals of inc.c.
2700
2701         * Make -inplace the default for anno, forw, dist, and repl.
2702
2703         * Changed --enable-smtp to --with-mts={smtp,sendmail}
2704
2705         * Created new directory mts/sendmail for direct sendmail
2706           interface (although it currently still uses SMTP).
2707
2708         * Removed all the TMA (trusted mail agent) code
2709
2710         * Removed all the TTYD (terminal access daemon) code
2711
2712         * Removed all the MF (uucp filtering) code.
2713
2714         * Removed all the code for BERK.
2715
2716         * Removed all the code for stand-alone delivery (MHMTS).
2717
2718         * Split the file mts/sendmail/smail.c into sendmail.c and
2719           smtp.c.  Changed the name of the directory to mts/smtp.
2720
2721         * Changed autoconf to use @sysconfdir@ for location of
2722           configuration files.
2723
2724         * Changed #define in mhn.c from FTP to BUILTIN_FTP.
2725
2726 Mon Jul 21 03:22:34 1997  Richard Coleman  <coleman@math.gatech.edu>
2727
2728         * Released nmh-0.17.
2729
2730         * MAKEDEFS weren't passed down to recursive makes correctly.
2731
2732         * slocal.c now checks for UTMP_FILE and _PATH_UTMP instead
2733           of hard-coding "/etc/utmp".
2734
2735         * rcvtty.c check for _PATH_UTMP if UTMP_FILE is not
2736           defined.
2737
2738         * Remove configure checks for ulong and ushort.  Changed
2739           code to just use unsigned {short, long}.
2740
2741         * Change addmsg function in refile.c to return new
2742           number of refiled message.
2743
2744         * Added check in get_returnpath for empty unixbuf.
2745
2746         * Cleanup of sbr/pidstatus to use more POSIX macros
2747           for return value of wait().
2748
2749         * Change configure to also check /bin for "more".
2750
2751 Sat Jul 12 00:02:23 1997  Richard Coleman  <coleman@math.gatech.edu>
2752
2753         * Released nmh-0.16.
2754
2755 Mon Jun 23 20:13:24 1997  Richard Coleman  <coleman@math.gatech.edu>
2756
2757         * Added automimeproc, which should replace automhnproc.
2758
2759         * multipart messages will no longer abort for messages
2760           of type 8bit or binary (although we still can't really
2761           deal with binary messages, yet).
2762
2763         * Fix double free of c_storage.  From John MacMillan.
2764
2765         * mhn now treats unknown subtypes of "text" as text/plain.
2766
2767         * mhn changed so that specifying mhn-show-multipart, or
2768           mhn-show-multipart/{mixed, alternate, etc...) will override
2769           the use of the internal method for displaying these types.
2770           Previously mhn would always use the internal method for subtypes
2771           mixed, alternate, digest, and parallel (even if an alternate
2772           method was specified in mhn.defaults).
2773
2774         * mhn show treats unknown subtypes of multipart, as type
2775           multipart/mixed (as specified RFC2046).
2776
2777         * mhn checks for the parameter "name" rather than "x-name".
2778           From MH-6.8.4 patch.
2779
2780         * Fix double free of ctinfo in user_content when using
2781           #forw with single message.  From John MacMillan (and
2782           MH-6.8.4 patch).
2783
2784         * Changed -mhnproc switch for show, to -showmimeproc.
2785
2786         * Changed profile entry "mhnproc" to "showmimeproc".
2787
2788         * Added "mime" option to "whatnow", which calls the program
2789           "buildmimeproc" (default is mhn -build) to process MIME
2790            composition files.
2791
2792         * Added -build switch to mhn, to process MIME composition
2793           files.
2794
2795         * Did some reorganizing of mhn.c.
2796
2797         * Changed casting in mts/sendmail/smail.c from (char) to
2798           (signed char) so SMTP reply codes work correctly for machines
2799           which used unsigned chars by default.
2800
2801 Sat Jun 21 01:21:47 1997  Richard Coleman  <coleman@math.gatech.edu>
2802
2803         * Released nmh-0.15.
2804
2805         * Added new form "scan.unseen" to distribution.  It marks messages
2806           which are in any sequence in Unseen-Sequence.
2807
2808         * Do some rearranging of date/time code in zotnet/tws/dtime.c
2809
2810         * Fix sign extension bugs in fmt_scan.c.
2811
2812         * Fix m_atoi.c so that strings ending in non-digit characters
2813           return 0.
2814
2815         * Split code in burst.c so that finding delimiters of digested
2816           messages and bursting a message into multiple messages are
2817           two separate functions (find_delim and burst).
2818
2819         * Add workaround fo AC_PATH_PROG in configure.in, so
2820           that BSD4.4 machines can find sendmail, vi, more.
2821
2822         * Added "-width" option to rcvtty.
2823
2824         * Change a few variable names in zotnet/mts/client.c since
2825           they conflict with defines on AIX.
2826
2827         * Makefile in zotnet/tws assumes lexing of dtimep.lex was
2828           unsuccessful if resulting file is less than 500 lines long
2829           (rather than 10, which was previous value), since AIX
2830           sed gives mangled file of about 200 lines.
2831
2832         * Extract code in rcvstore.c to link message into folder,
2833           and put in own subroutine.
2834
2835         * Extract code in refile.c to link message into folder,
2836           and put in own subroutine.
2837
2838         * Moved code to remove messages from folder into own
2839           routine "folder_delmsgs" in sbr.  Changed rmm.c and
2840           refile.c to use new routine.
2841
2842 Fri May 16 06:09:31 1997  Richard Coleman  <coleman@math.gatech.edu>
2843
2844         * Renamed m_seqok to seq_nameok.
2845
2846         * Changed m_setunseen, msh, mshcmds, flist, and scan to use
2847           seq_getnum.
2848
2849         * Changed m_seqflag to return the number of a sequence rather
2850           than its bit flag.  Changed its name to seq_getnum and renamed
2851           file to sbr/seq_getnum.c.
2852
2853         * Removed function m_seqnew and file sbr/m_seqnew.c since it is
2854           no longer used.
2855
2856         * Added zero switch to m_seqadd function to zero out bits before
2857           adding message to sequence.
2858
2859         * Renamed function m_setvis to m_setunseen, and renamed
2860           corresponding file in sbr.
2861
2862         * Renamed function m_setseq to m_setprev, and renamed corresponding
2863           file in sbr.
2864
2865         * Changed mark.c and pick.c to use m_seqaddsel and m_seqdelsel.
2866
2867         * Added new function m_seqdelsel to m_seqdel.c, which deletes
2868           all selected messages from a sequence.
2869
2870         * Added new function m_seqaddsel to m_seqadd.c, which adds all
2871           selected messages to a sequence.
2872
2873         * Split sbr/m_seqnew.c into m_seqadd.c, m_seqdel.c, m_seqnew.c,
2874           and m_seqok.c.
2875
2876 Thu May 15 00:53:17 1997  Richard Coleman  <coleman@math.gatech.edu>
2877
2878         * Renamed function pack_folder to m_packfolder, and moved it
2879           from uip/folder.c into its own file sbr/m_packfolder.c
2880
2881 Wed May 14 23:38:00 1997  Richard Coleman  <coleman@math.gatech.edu>
2882
2883         * Changed function m_gmsg to m_readfolder.  Renamed file
2884           sbr/m_gmsg.c to sbr/m_readfolder.c.
2885
2886 Mon May  5 19:57:11 1997  Richard Coleman  <coleman@math.gatech.edu>
2887
2888         * Expanded rcvtty man page, and added small patch from
2889           MH-6.8.4 distribution.
2890
2891 Fri May  2 15:24:34 1997  Richard Coleman  <coleman@math.gatech.edu>
2892
2893         * Released nmh-0.14.
2894
2895         * Comment out configure test and code for tgetent to allocate its
2896           own termcap buffer when passed a NULL argument.
2897
2898 Sat Apr 26 03:46:38 1997  Richard Coleman  <coleman@math.gatech.edu>
2899
2900         * Added new options `-checkmime', `-nocheckmime', and `-mhnproc'
2901           to show.  Restructured code to handle options to various
2902           `procs' better.  Deprecated `-noshowproc' option and NOMHNPROC
2903           environment variable.
2904
2905         * Added new man page `mh-draft' which documents the
2906           draft folder facility in nmh.
2907
2908         * Renamed fmtsbr.h to fmt_scan.h.  Renamed fmtcompile.h
2909           to fmt_compile.h.
2910
2911         * split fmtsbr.c into fmt_scan.c and fmt_new.c.  Renamed
2912           fmtcompile.c to fmt_compile.c, and formataddr.c to
2913           fmt_addr.c.
2914
2915         * `send -help' wasn't showing the -(no)mime and -split
2916           options.
2917
2918 Fri Apr 25 02:50:36 1997  Richard Coleman  <coleman@math.gatech.edu>
2919
2920         * Released nmh-0.13.
2921
2922         * Changed mhpath so it doesn't abort if a message sequence
2923           such as "mhpath all" expands to more than 1000 messages.
2924           Also mhpath now dynamically reallocated space for message
2925           names (The number of command line arguments is still limited
2926           to MAXARGS).
2927
2928         * Did some general restructuring of the code in folder.c
2929           that checks for folder information, and prints it.
2930
2931 Thu Apr 24 01:04:37 1997  Richard Coleman  <coleman@math.gatech.edu>
2932
2933         * Changed `folder' to reallocate space for folder names if
2934           necessary.  So `folders' can now handle more than 300 folders.
2935
2936 Tue Apr 22 14:01:26 1997  Richard Coleman  <coleman@math.gatech.edu>
2937
2938         * Change configure to use a compile check to see if the tm struct
2939           has tm_gmtoff, rather than using egrep.
2940
2941 Mon Apr 21 02:19:17 1997  Richard Coleman  <coleman@math.gatech.edu>
2942
2943         * Released nmh-0.12.
2944
2945         * Had set_exists and unset_exists macros backwards.
2946
2947         * Released nmh-0.11.
2948
2949 Thu Apr 10 02:39:53 1997  Richard Coleman  <coleman@math.gatech.edu>
2950
2951         * Added documentation to mh-profile.man about the various
2952           `procs' (mhlproc, showproc, lproc, etc...).
2953
2954         * Replace the bit twiddling for SELECTED, UNSEEN, and
2955           mp->attrstats with macros.
2956
2957         * If system doesn't have SIGEMT (like Linux), then use SIGTERM
2958           in msh.c instead.
2959
2960         * Change fstat to stat in m_gmsg.c since Linux wants
2961           to hide dd->dd_fd.
2962
2963         * Merge Linux patch sent in by Michel Oosterhof (original
2964           patch from bsa@kf8nh.wariat.org).
2965
2966         * Document an undocumented MH feature.  mhn -form mhl.null
2967           will suppress the display of the message header.
2968
2969         * mhparam will now return "mhparam etcdir".
2970
2971         * Add catproc to /config/config.c and use that in show.c
2972           and mshcmds.c, rather than hard coding in /bin/cat.
2973
2974         * Add mhnproc to the list of `procs' in mh-profile.man.
2975
2976         * Add configure test for lorder and tsort commands.
2977
2978         * Commented out the padding in the `msgs` struct in h/mh.h
2979
2980         * Change m_gmsg.c to allocate elements to the `info' array by
2981           500 elements at a time (rather than MAXFOLDERS / 5).
2982
2983         * Add note to man page for mhmail that zero length messages are
2984           not sent.  Need to use -body "" to send empty messages.
2985
2986         * zotnet/mts/mts.c : compare character with '\0', not NULL.
2987
2988         * sbr/getcpy.c : assign '\0' to character, not NULL.
2989
2990         * add m_fmsg to most programs in uip so that they explicitly free
2991           folder/message structure when done with folder.
2992
2993         * uip/slocal.c : cleanup processing of sender.  Make sure it is
2994           defined even if message is missing "From " line.
2995
2996 Mon Mar 31 03:37:35 1997  Richard Coleman  <coleman@math.gatech.edu>
2997
2998         * Released nmh-0.10.
2999
3000 Sun Mar 30 21:46:17 1997  Richard Coleman  <coleman@math.gatech.edu>
3001
3002         * Add configure check for <locale.h>.  Turn on LOCALE support
3003           by default.
3004
3005 Thu Mar 20 03:21:24 1997  Richard Coleman  <coleman@math.gatech.edu>
3006
3007         * Reversed previous decision to retain "From " lines in slocal.
3008           The "From " line is now removed from all messages.
3009
3010         * inc now saves the date from the "From " envelope in the
3011           Delivery-Date header for all messages.
3012
3013         * sbr/m_getfld.c: Clean up processing of Return-Path and
3014           Delivery-Date from the "From " envelope.
3015
3016 Mon Mar 17 19:03:36 1997  Richard Coleman  <coleman@math.gatech.edu>
3017
3018         * client.c: cast iaddr to int before comparing return value
3019           of inet_addr with NOTOK.
3020
3021 Tue Mar 11 04:38:10 1997  Richard Coleman  <coleman@math.gatech.edu>
3022
3023         * Grep test for signal names was failing on some OS'es because
3024           of missing tabs in regex.
3025
3026 Sat Mar  8 01:58:22 1997  Richard Coleman  <coleman@math.gatech.edu>
3027
3028         * Released nmh-0.09.
3029
3030         * Move config files and format files to *.old before installing.
3031
3032         * Add configure check for killpg.
3033
3034         * msh.c: include <termios.h> instead of <termio.h> and
3035           <sys/ioctl.h>.
3036
3037         * prompter.c: don't include <sys/ioctl.h> anymore.
3038
3039 Thu Mar  6 04:03:24 1997  Richard Coleman  <coleman@math.gatech.edu>
3040
3041         * Added `-mime' and `-nomime' options to `repl'.
3042           From MH-6.8.4 diff.
3043
3044 Tue Mar  4 03:10:37 1997  Richard Coleman  <coleman@math.gatech.edu>
3045
3046         * ruserpass.c : removed conflicting prototypes.
3047
3048         * rcvtty.c : Fixed rcvtty to obey terminal permissions granted
3049           by `mesg' command.  Previously only worked on BSD machines.
3050
3051 Mon Mar  3 00:18:59 1997  Richard Coleman  <coleman@math.gatech.edu>
3052
3053         * rcvtty.c : Changed to use #define UTMP_FILE (if exists) rather
3054           than hard coded "/etc/utmp".
3055
3056         * Released nmh-0.08.
3057
3058         * Changed slocal to lock .maildelivery (or file given by -maildelivery)
3059           when accessing ndbm/db file for duplicate suppression, instead of
3060           locking database itself.
3061
3062 Thu Feb 27 05:28:09 1997  Richard Coleman  <coleman@math.gatech.edu>
3063
3064         * Added slocal action `mmdf' to deliver to a file in mmdf format.
3065
3066         * Changed the slocal actions `file' and `>' to always deliver in
3067           mbox (uucp) format rather than be determined by RPATHS config
3068           option.
3069
3070         * Changed the slocal action `mbox' to deliver in mbox (uucp) format
3071           rather than mmdf format.
3072
3073         * slocal now adds Delivery-Date field to all messages (previously it
3074           only added it to messages when delivering them to a file). The
3075           "From " line is now retained on all messages if compiling with
3076           RPATHS, rather than being discarded.
3077
3078         * rcvpack no longer adds the Delivery-Date field to messages.
3079
3080 Sun Feb 23 22:03:54 1997  Richard Coleman  <coleman@math.gatech.edu>
3081
3082         * Removed the script packmbox, since it's functionality has been
3083           added to packf.
3084
3085         * Changed packf so that it uses mbox (uucp) format by default
3086           rather than mmdf format.  Added options -mbox and -mmdf to
3087           packf so you can choose the preferred format.
3088
3089         * Changed rcvpack so that it uses mbox (uucp) format by default
3090           rather than mmdf format.  Added options -mbox and -mmdf to
3091           rcvpack so you can choose the preferred format.
3092
3093 Tue Feb 18 00:01:05 1997  Richard Coleman  <coleman@math.gatech.edu>
3094
3095         * Changed nmh to use dot locking by default (although you
3096           can still easily change this in config.h).
3097
3098         * Simplified locking code.  Removed code allowing setting of
3099           locking type in mts.conf.  Now the locking type and locking
3100           directory (if any) can only be set at compile time.
3101
3102 Fri Feb 14 02:49:18 1997  Richard Coleman  <coleman@math.gatech.edu>
3103
3104         * Prefer getting timezone information from tm->gmtoff rather
3105           than tzset and external timezone variable.
3106
3107 Thu Feb 13 00:35:45 1997  Richard Coleman  <coleman@math.gatech.edu>
3108
3109         * Fixed typo in ruserpass.c in the variable toktabs.
3110
3111         * When ruserpass was added to LIBOBJS, it was missing
3112           the suffix.
3113
3114         * Released nmh-0.07.
3115
3116 Tue Feb 11 01:29:47 1997  Richard Coleman  <coleman@math.gatech.edu>
3117
3118         * Add check to configure, so that if ruserpass, or _ruserpass
3119           is not found, build version of ruserpass in sbr.
3120
3121         * Added define's to discard.c, m_getfld.c, and scansbr.c so
3122           the code that manipulates internals of stdio, will build
3123           on SCO 5.x.
3124
3125         * Added #define to control whether to compile the simple
3126           built-in FTP client in mhn.
3127
3128         * Added configure check for ushort and ulong.  Change code
3129           to use ushort/ulong rather than u_short/u_long.
3130
3131         * A couple of small cleanups in locking code.
3132
3133         * Added configure check for gmtoff element in struct tm.
3134
3135         * Added configure check for tzset.
3136
3137 Fri Feb  7 03:01:57 1997  Richard Coleman  <coleman@math.gatech.edu>
3138
3139         * Released nmh-0.06.
3140
3141         * Removed code for machines that don't have socket
3142           interface (how could they get mail anyway?).
3143
3144         * Removed code for BSD41 machines.  I don't think there are
3145           many such machines around anymore.
3146
3147         * Add configure check for function uname, and prefer it
3148           over gethostname.  General cleanup of zotnet/mts/mts.c.
3149
3150         * Change all `lseek' calls to use POSIX symbolic constants
3151           SEEK_SET, SEEK_CUR, SEEK_END.
3152
3153 Thu Feb  6 01:16:30 1997  Richard Coleman  <coleman@math.gatech.edu>
3154
3155         * Check lex generated file in zotnet/tws and use
3156           pre-generated version if necessary.
3157
3158         * Released nmh-0.05.
3159
3160         * Change to use reliable signals on all platforms that have
3161           sigaction.  Change so that interrupted system calls are
3162           restarted for all signals except SIGALRM.  This fixes alarm
3163           handling code in smail.c for BSD based systems.
3164
3165         * Added lorder and tsort commands so that created libs can
3166           be linked in one pass.
3167
3168 Tue Feb  4 01:33:00 1997  Richard Coleman  <coleman@math.gatech.edu>
3169
3170         * Changed pidwait so that while it is waiting for a child,
3171           it should block signals rather than ignore them.
3172
3173 Mon Feb  3 21:05:30 1997  Richard Coleman  <coleman@math.gatech.edu>
3174
3175         * Add checks to configure for dbm_open and -lndbm.
3176
3177 Thu Jan 30 05:15:42 1997  Richard Coleman  <coleman@math.gatech.edu>
3178
3179         * folder -pop and folder -push were freeing some memory too
3180           quickly, which caused the entry popped from the stack to not
3181           become the current folder.
3182
3183 Wed Jan 29 01:28:02 1997  Richard Coleman  <coleman@math.gatech.edu>
3184
3185         * Released nmh-0.04.
3186
3187         * Define ospeed and PC in termsbr.c is OS doesn't have
3188           it.
3189
3190 Sun Jan 26 20:25:10 1997  Richard Coleman  <coleman@math.gatech.edu>
3191
3192         * editfile will create a symbolic link to the altmsg if it
3193           can't make a link, on any machine supporting lstat.  Formerly
3194           this would happen only on BSD42 based machines.
3195
3196 Sat Jan 25 22:54:26 1997  Richard Coleman  <coleman@math.gatech.edu>
3197
3198         * traverse (in popsbr.c) wasn't calling va_start before using
3199           variable argument list.  Fixes core dump in inc when using POP.
3200
3201 Fri Jan 24 03:27:59 1997  Richard Coleman  <coleman@math.gatech.edu>
3202
3203         * The variable pass in remotemail needed to be set to
3204           NULL.  (From MH-6.8.4 diff).  Fixes core dump of msgchk when
3205           using POP.
3206
3207         * inc and msgchk were using -rpop by default when configured
3208           with POP support.  Default is now -norpop.
3209
3210 Thu Jan 23 02:01:17 1997  Richard Coleman  <coleman@math.gatech.edu>
3211
3212         * By default, post will now give the SMTP HELO command with
3213           the local hostname.  If you specify a hostname with the
3214           clientname: option in mts.conf file, post will give the
3215           HELO command with that name instead.  If the argument to the
3216           clientname: option is empty, no HELO command is given.
3217           (From the MH-6.8.4 diff)
3218
3219 Wed Jan 22 01:55:45 1997  Richard Coleman  <coleman@math.gatech.edu>
3220
3221         * When using `-help' for a command, it will also print its
3222           profile compents from .mh_profile. (From MH-6.8.4 diff)
3223
3224         * "slocal -file" will now correctly takes its input from
3225           a file (currently need to specify full path).
3226
3227 Sun Jan 19 20:37:21 1997  Richard Coleman  <coleman@math.gatech.edu>
3228
3229         * "slocal -debug" will now issue a warning if a non-blank
3230           line in the .maildelivery file has less than 5 fields.
3231
3232 Sat Jan 18 02:26:41 1997  Richard Coleman  <coleman@math.gatech.edu>
3233
3234         * Changed slocal so that code for duplicate suppression
3235           (MH config was MSGID) is always built. Added the options
3236           -[no]suppressdup to slocal to turn this on/off.
3237
3238 Thu Jan 16 00:26:34 1997  Richard Coleman  <coleman@math.gatech.edu>
3239
3240         * Released nmh-0.03.
3241
3242         * Fixed problem where mark would core dump if no
3243           .mh_sequence file existed.
3244
3245         * Fixed problem where slocal would core dump if -debug
3246           option was given, and certain headers were missing.
3247
3248         * Added patch to slocal to add `folder' (+) action, which
3249           is shorthand for piping message to rcvstore.  Updated
3250           man page.
3251
3252 Wed Jan 15 21:30:17 1997  Richard Coleman  <coleman@math.gatech.edu>
3253
3254         * Changed flist option -unseen to -[no]all.  Cleaned up
3255           flist man page.
3256
3257 Fri Jan 10 20:36:33 1997  Richard Coleman  <coleman@math.gatech.edu>
3258
3259         * Fixed flist.  Changed the profile component `Folder-Order'
3260           to `Flist-Order.  Added option `-sequence' to flist, so
3261           you can specify the name of the sequence to search for.
3262
3263 Thu Jan  9 00:20:48 1997  Richard Coleman  <coleman@math.gatech.edu>
3264
3265         * A few minor portability cleanups.  Changed to use PATH_MAX
3266           rather than MAXPATHLEN.  Don't assume ospeed variable exists
3267           in termsbr.c.  Removed some conflicting prototypes.
3268
3269 Wed Jan  8 11:05:02 1997  Richard Coleman  <coleman@math.gatech.edu>
3270
3271         * Add configure test to check if tgetent will accept NULL
3272           and allocate its own buffer.  Borrowed from zsh.
3273
3274         * Changed libpath to etcpath.
3275
3276 Mon Jan  6 04:15:35 1997  Richard Coleman  <coleman@math.gatech.edu>
3277
3278         * Cleaned up source code and Makefiles, so that if your `make'
3279           supports the VPATH option, you can build nmh in a different
3280           directory from where the source code is located.
3281
3282 Fri Jan  3 05:05:18 1997  Richard Coleman  <coleman@math.gatech.edu>
3283
3284         * Released nmh-0.02.
3285
3286 Wed Jan  1 17:41:52 1997  Richard Coleman  <coleman@math.gatech.edu>
3287
3288         * Split mhook man page into man pages for rcvdist, rcvpack,
3289           and rcvtty.
3290
3291 Tue Dec 31 03:07:48 1996  Richard Coleman  <coleman@math.gatech.edu>
3292
3293         * Changed code to use strerror, rather than using sys_errlist
3294           and sys_nerr directly.
3295
3296 Mon Dec 30 02:15:25 1996  Richard Coleman  <coleman@math.gatech.edu>
3297
3298         * -compat switch from install-mh removed.
3299
3300         * Changed the default POP port from "pop" to "pop3".
3301
3302 Sat Dec 28 13:25:05 1996  Richard Coleman  <coleman@math.gatech.edu>
3303
3304         * Changed mhn_defaults to mhn.defaults.  Changed create_mhn_defaults
3305           (again) to mhn.defaults.sh.  Changed find_program (again) to
3306           mhn.find.sh.  mhn.defaults.sh now takes the search path
3307           as an argument.  Default search path is now specified in Makefile
3308           rather than in script.
3309
3310 Fri Dec 27 16:34:01 1996  Richard Coleman  <coleman@math.gatech.edu>
3311
3312         * Changed mtstailor file to mts.conf.  Updated man pages.
3313
3314         * Changed si_value to si_val in mhn.c, since it conflicts with
3315           macro defined on Solaris.
3316
3317 Thu Dec 26 02:50:15 1996  Richard Coleman  <coleman@math.gatech.edu>
3318
3319         * Added --enable-nmh-mhe (and --disable-nmh-mhe) to enable/disable
3320           support for Emacs front-end mhe.  It is on by default.
3321
3322         * Added the following configure options: --enable-nmh-pop to
3323           enable client side pop support, --enable-nmh-smtp to enable
3324           SMTP support.  Client-side pop support now compiles.  Man
3325           pages for inc, msgchk, mh-chart now correctly added pop
3326           options if enabled.
3327
3328 Tue Dec 24 14:33:20 1996  Richard Coleman  <coleman@math.gatech.edu>
3329
3330         * Added configure test for bug in C libraries where linker
3331           can't find ruserpass, but can find _ruserpass.
3332
3333         * Fixed configure test so that termcap variable ospeed is
3334           correctly found.
3335
3336 Mon Dec 23 19:40:17 1996  Richard Coleman  <coleman@math.gatech.edu>
3337
3338         * Source files converted to ANSI C.
3339         
3340         * md5 now compiled separately rather than being included
3341           in mhn.c.  Changed md5 to use memset and memcpy.
3342
3343 Fri Dec 20 02:29:37 1996  Richard Coleman  <coleman@math.gatech.edu>
3344
3345         * Collected the error routines adios, advise, admonish, and advertise
3346           into one file (error.c), and did some rearranging of the code.
3347
3348 Thu Dec 19 19:05:29 1996  Richard Coleman  <coleman@math.gatech.edu>
3349
3350         * Added awk script sigmsg.awk (originally written by
3351           Geoff Wing <mason@werple.apana.org.au> for zsh) to
3352           automatically generate signal messages for pidstatus.c.
3353           Added files sbr/signals.c, h/signals.h.  Code now uses
3354           sigprocmask to block signals (if available).  Code now uses
3355           signal blocking on non-BSD machines.
3356
3357 Wed Dec 18 01:55:17 1996  Richard Coleman  <coleman@math.gatech.edu>
3358
3359         * Add configure check for ATTVIBUG.  From Soren's mh autoconf work.
3360
3361         * Released nmh-0.01.
3362
3363         * Added configure code to check for type of signals functions
3364           you have (POSIX or BSD style signals).  Added function
3365           SIGPROCMASK to simulate sigprocmask on machines that don't
3366           have POSIX signals.
3367
3368 Fri Dec 13 19:40:48 1996  Richard Coleman  <coleman@math.gatech.edu>
3369
3370         * Added -version switch to all commands.  Also added to
3371           their man pages.
3372
3373 Mon Dec  9 16:36:54 1996  Richard Coleman  <coleman@math.gatech.edu>
3374
3375         * Renamed uip/trmsbr.c to termsbr.c and changed it to use
3376           POSIX termios.h style functions if present.
3377
3378 Tue Dec  3 16:18:39 1996  Richard Coleman  <coleman@math.gatech.edu>
3379
3380         * Changed support/general/bootmhn.sh to output new mhn_defaults
3381           file to standard output by default (makes it easier for testing).
3382           Changed name of script to create_mhn_defaults.  Changed bootmhn.findit
3383           script to find_program.
3384
3385 Sun Dec  1 10:00:00 1996  Richard Coleman  <coleman@math.gatech.edu>
3386
3387         * Added patch to uip/folder.c from exmh distribution to
3388           speed up -recurse option.
3389
3390         * Added flist command from exmh distribution.  It doesn't work
3391           yet, but it compiles :-)
3392
3393         * Changed default location for install to
3394           /usr/local/nmh/{bin,etc,lib,man}.  Split files so that format
3395           and configuration files go in nmh/etc, and support binaries go
3396           in nmh/lib.  Of course, all this can now be changed in the top
3397           level Makefile. 
3398
3399         * Started with mh-6.8.3 as based and converted to autoconf.
3400           Rewrote all the Makefiles.  Currently only works with sendmail/smtp.
3401           Pop support and plenty of other things, are now broken.