updated the TODO list and bumped the revision to 1.0.2.
[mmh] / ChangeLog
1 Tue Oct 26 22:57:00 1999 Doug Morris <doug@mhost.com>
2         
3         * Added check for whether "libtool" is in fact gnu libtool. If
4         it is, it is not used. This is the wrong behavior. If vendor
5         XYZ later on decides to create yet another libtool, we'll be
6         caught again. This works for now.
7
8         * Minor updates to MACHINES refering to Mac OS X.
9
10 Thu Oct 21 20:45:37 1999 Doug Morris <doug@mhost.com>
11
12         * Added check for "libtool" (a ranlib type tool for Mac OS X)
13         and modified Makefiles so that nmh will build under Mac OS X.
14
15 Sun Oct 17 08:28:56 1999 Ruud de Rooij <ruud@ruud.org>
16
17         * Changed repl defaults to partly revert to MH behaviour,
18           "-cc all" is now only implied with -group.
19
20         * The replcomps template includes cc: header again (as in MH).
21
22         * Updated repl man page to reflect these changes.
23
24 Sat Oct 16 02:57:47 1999 Doug Morris <doug@mhost.com>
25
26         * Tweaked configure to handle Solaris and SunOS after the BIND
27         changes. Both need more cleanup.
28
29 Sat Oct 16 00:17:36 1999 Doug Morris <doug@mhost.com>
30
31         * Removed BIND define and replaced it with a check for
32         gethostbyname (to determine if the host is DNS aware) and a
33         check for sethostent. This appears to be the right thing to
34         do, but there is no explanation of the reasoning behind the
35         BIND define in the code and it appears to have been used for
36         multiple purposes. 
37
38 Wed Oct 13 15:53:53 1999 Doug Morris <doug@mhost.com>
39
40         * Updated manpages Makefile to link mh-profile.5 to
41         mh_profile.5 after installation. Suggestion from Richard Cohen
42         <richard@jubjub.demon.co.uk>.
43
44         * Modified configure.in to check for _IO_write_ptr and libio.h
45         to determine whether to define LINUX_STDIO instead of using 
46         config.guess.
47
48 Mon Oct 4 15:22:46 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
49
50         * Added '-L' to the calls of 'ls' in configure.in -- I have seen
51         multiple machines in the past where the mail spool was a symlink
52         to a directory on another device with more free space.
53
54 Fri Oct 1 22:36:56 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
55
56         * Fixed a portability problem in Doug's fix of a portability
57         problem in my MAILGROUP autoconf support ('ls -l' vs. 'ls -lg'). 
58
59 Sat Sep 25 18:40:43 1999 Ruud de Rooij <ruud@ruud.org>
60
61         * Added config.sub and config.guess to the list of files to be
62         distributed.
63
64         * Fixed bug in sbr/fmt_scan.c where an extra newline would be
65         added if a list of addresses was split over several header lines.
66
67         * In mts/smtp/smtp.c, undefine strlen and strcpy if they are
68         macros, regardless of platform.
69
70         * Allow q to quit mhshow, and n to skip to next part.  Patch from
71         Kimmo Suominen <kim@tac.nyc.ny.us>.
72
73         * Modified mhstore to recognize attachments created by sendfiles
74         with x-conversions=gzip.
75
76 Mon Sep 13 21:20:10 1999 Doug Morris <doug@mhost.com>
77
78         * added explicit cast to long from time_t for tclock in
79         post.c.
80
81         * Commented out #ifdefs for <sys/ioctl.h> in termsbr.c since
82         it's needed for ioctl() anyway. This prevents a warning about
83         implicit definition of ioctl().
84
85         * Moved guesses performed by AC_CANONICAL_SYSTEM back into the
86         "User Configuration" section of config.h (moved @TOP@ in
87         acconfig.h) so they're easier to find, should someone actually
88         want to mess with them.
89
90 Sun Sep 12 15:50:34 1999 Doug Morris <doug@mhost.com>
91
92         * updated Makefile.in so it recognized COMPLETION-TCSH and
93         COMPLETION-ZSH (only used in make nmhdist). 
94
95         * added prototype for ruserpas to <h/prototypes.h>. Fixes
96         warnings in mhparse.c and mhbuildsbr.c.
97
98         * added include checks for <time.h> and <sys/time.h> to
99         prevent warnings in fmt_compile.c, fmt_scan.c, lock_file.c,
100         sendsbr.c, mhbuildsbr.c, mhcachesbr.c, picksbr.c, and post.c.
101
102         * added include for <zotnet/mts/mts.h> to ali.c, scan.c, ap.c,
103         rcvdist.c, rcvstore.c, rcvtty.c, and spost.c to remove
104         warnings about implicit definition of mts_init().
105
106         * added <grps.h> to slocal.c to prevent warnings about
107         function initgroups.
108
109         * added <h/signals.h> to prevent warning about missing SIGNAL
110         function.
111
112         * added function prototypes to smtp.c, whatnowproc.c,
113         mhbuildsbr.c, mhparse.c, mshcmds.c, show.c, whatnow.c, mhl.c
114         to fix warnings.
115
116         * explicitly declared mbx_style in mshcmds.c and lused in
117         fmtdump.c as type static int instead of just static to
118         prevent warnings.
119         
120         * various code cleanups to prevent ambiguous statements
121         (brackets for if/thens and parens for complicated if
122         statements).
123
124
125 Sun Sep 12 09:19:27 1999 Doug Morris <doug@mhost.com>
126
127         * commented out _cleanup() in mf.c because it's the only
128         location in all of the source code where it exists. It was
129         preventing compilation on at least linux.
130
131         * Added check for <db1/ndbm.h> which is the new location where
132         linux systems appear to be stuffing this header file.
133
134 Thu Sep  9 23:15:49 1999 Doug Morris <doug@mhost.com>
135
136         * fixed varous mkstmep bugs introduced in 1.0.1 by me. Whups!
137
138         * added mh_profile SEGV patch from Richard Cohen
139         <richard@jubjub.demon.co.uk> that prevents crashing when
140         mh_profile doesn't end in a newline. A similar patch was
141         previously sent in by Andrew Bettison <andrewb@zip.com.au>.
142
143         * fixed bug in associated with MAILGROUP #define (group "mail"
144         is not universal) -- hard to believe, but true.
145
146 Tue Sep 7 16:47:03 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
147
148         * Renamed ZSH.COMPLETION to COMPLETION-ZSH and added COMPLETION-TCSH.
149
150 Tue Aug 17 16:06:29 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
151
152         * Automated #define of MAILGROUP and installation of inc as setgid mail
153         when the mail spool directory isn't world-writable.
154
155 Thu Jul 15 18:37:07 1999 Dan Harkless <dan-nmh@dilvish.speed.net>
156
157         * slocal -debug used to leave a file in /tmp for each message
158         processed.  Very bad for folks with slocal -debug in their .forward!
159
160         * Got rid of a ton of compilation warnings.  Most were "junk"
161         warnings due to the use of gcc -Wall (without -Wno-parentheses),
162         but a few represented real bugs.  There remain many warnings to be
163         tackled that are due to missing function prototypes (e.g. snprintf()).
164
165         * Default rcvdistcomps no longer puts a copy of all outgoing
166         messages in outbox.  Added an rcvdistcomps.outbox that does.
167
168 Sat Jun  9 12:22:47 1999 Doug Morris <doug@mhost.com>
169
170         * Updated configure to check for mkstemp (available on OpenBSD) and 
171         substitute it for mktemp if available. 
172
173 Thu May 13 16:40:19 1999  Doug Morris <doug@mhost.com>
174
175         * Added config.sub and config.guess and updated acconfig.h and
176         configure.in to automatically detect system type and set the
177         proper #defines.
178
179 Wed May 12 23:41:33 1999  Dan Winship  <danw@mit.edu>
180
181         * Released nmh-1.0.1.
182
183 Fri May  7 17:18:28 1999  Dan Winship  <danw@mit.edu>
184
185         * Fixed flist to properly deal with relative folder names.
186         Problem noted by Jerry Peek <jpeek@jpeek.com>.
187
188         * Fixed --with-krb4 to work with original Kerberos 4 libraries as
189         well as the Kerberos 5 compat libraries. Based on a patch from
190         Assar Westerlund <assar@sics.se>.
191
192         * Added a check in configure.in to test if modf is in libc and
193         link with libm if not. This is needed by at least Digital UNIX. 
194         Problem pointed out by Kevin Oberman <oberman@es.net>.
195
196         * Fix a bug from the "mhn -show" to "mhshow" renaming that
197         made the "list" command in whatnow not work for some users.
198         From Ruud de Rooij <r.c.m.derooij@twi.tudelft.nl>.
199
200         * Replaced "extern int errno" with "#include <errno.h>" in a
201         number of files. Suggested by Stephen Wilson Bailey
202         <swb@nconnect.net>.
203
204         * Fixed a problem in how "packf -mbox" translated "Return-Path:"
205         lines. From Kimmo Suominen <kim@tac.nyc.ny.us>.
206
207         * Fixed a segmentation fault in inc. Patch originally from Ruud de
208         Rooij <r.c.m.derooij@twi.tudelft.nl>.
209
210         * Allow display of 8bit encoded messages. From Kimmo Suominen
211         <kim@tac.nyc.ny.us>.
212
213         * Fixed repl to not add line breaks in the middle of long
214         addresses when building a reply. From Ruud de Rooij
215         <r.c.m.derooij@twi.tudelft.nl>.
216
217         * Added -library switch to spost so it can parse user aliases like
218         post does. From Ruud de Rooij <r.c.m.derooij@twi.tudelft.nl>.
219
220         * Changed configure.in's check for sigsetjmp to properly deal
221         with systems like Linux where it is a macro. From
222         <elleron@servtech.com>.
223
224         * Fixed a bug in whatnow that could cause it to sometimes exit
225         without prompting the user. Based on a patch by Richard Geiger
226         <rmg@netapp.com>.
227
228         * Added code to deal with SIGPIPE in mhl so it doesn't print
229         "Broken pipe" if you quit out of the moreproc.
230
231         * Documentation: Added a note to MACHINES about Irix make. Added a
232         pointer to the online copy of the MH book in INSTALL. Added
233         some additional information to the whatnow and packf man pages,
234         suggested by Jerry Peek <jpeek@jpeek.com>.
235
236         * Updated INSTALL, FAQ, etc to not refer to Richard as the
237         maintainer or math.gatech.edu as the home any more.
238
239 1999-02-06  Richard Coleman  <coleman@math.gatech.edu>
240
241         * Released nmh-1.0.
242
243         * Merged mbx_open and mbx_Xopen in dropsbr.c.  Fixed
244           mbx_open so that the mode of zero length maildrops
245           would not be changed.
246
247         * Replaced the substitute version of snprintf() with the
248           one from the Apache web server.
249
250         * Changed to default mode for creating new messages to 0600
251           (this should have been done a long time ago).
252
253         * Changed "flist" to handle searching for multiple sequences
254           for each folder.  Also flist will now correctly split
255           Unseen-Sequence if it consists of multiple sequences.
256
257         * Added new switches `-unlink' and `-nounlink' to "refile".
258
259         * Added new switches `-unlink' and `-nounlink' to "rmm".
260
261         * More cleanups of slocal output.  Changed adorn() to
262           send to stdout, instead of stderr (to match rest of
263           verbose printing).
264
265         * Merged mbx_create() into mbx_open, so that creating and
266           opening a nonexistent maildrop is done atomically.  This
267           removes a bad race condition.
268
269         * Fixed bug that caused slocal to be unable to save to MMDF
270           style drop file.
271
272         * Added new wrapper function usr_folder() to slocal.c to
273           handle adding message to folder (currently, it still uses
274           usr_pipe() to call rcvstore).
275
276         * seq_list() checks for empty folder before scanning for
277           sequence information.
278
279         * num_digits() in flist.c and folder.c now returns correct
280           value for 0.  Also added sanity check.
281
282         * folder_delmsgs() now correctly decrements internal message
283           count.
284
285         * Don't attempt to read sequence information if folder
286           is empty.
287
288         * Split seq_read into seq_public and seq_private.
289
290         * Small change to sigmsg.awk, since newer versions of gawk
291           interpret 034 as octal.
292
293         * In flist, don't scan for sequence information in empty folder.
294
295         * Updated mhn.defaults.sh to output profile entries for mhshow,
296           mhstore, and mhbuild.
297
298         * Changed configuration parameter "mhn-access-ftp" to
299           "nmh-access-ftp".  Updated man pages
300
301         * Moved the code in InitMultipart to reverse the order of the
302           parts in a multipart, into its own function "reverse_parts()".
303
304         * Changed code in mhbuildsbr.c to store unencoded content
305           in the c_cefile structure when building.
306
307         * Changed code in mhoutsbr.c to look for unencoded content
308           in the c_cefile structure when outputing message.
309
310         * Changed configuration parameter "mhn-cache" and
311           "mhn-private-cache", to "nmh-cache" and "nmh-private-cache",
312           since it is used in mhstore, mhlist, and mhshow.  Updated man pages
313
314         * Change configuration parameter "mhn-storage" to
315           "nmh-storage", since it is now used in mhstore, mhlist,
316           and mhshow.  Updated man pages
317
318         * Add autoconf support for KPOP (kerberized pop).
319
320         * Add autoconf support for Hesiod.
321
322         * Split routines to output a message given a Content structure
323           (output_message, output_content, write7Bit, etc..) to a new
324           file "mhoutsbr.c".
325
326         * Split output_content(), into output_content() and build_headers().
327
328         * Changed copy_some_headers() in mhstoresbr.c, to use the linked
329           list of header fields, rather than reopening the message.
330
331         * Added free_header() to mhfree.c to free structures containing
332           header field information.
333
334         * Changed get_content() to use the linked list of header fields
335           when parsing the various MIME headers (Content-XXX).
336
337         * Changed get_content() to store linked list of header field
338           values when parsing a content.
339
340         * Changed mhbuild, mhn, mhlist, mhshow, mhstore, to use the
341           routines in mhcachesbr.c to handle the content cache.
342
343         * Split various funtions (find_cache, find_cache_aux, find_cache_aux2,
344           cache_content) into new file mhcachesbr.c.
345
346         * More calls to sprintf/strcpy (primarily in mhparse.c
347           and mhbuildsbr.c) converted to snprintf/strncpy.
348
349         * When a message is displayed with `mhshow', it is now
350           removed from the "unseen" sequence.
351
352         * Change the default "showmimeproc" to "mhshow".
353
354         * Split "mhn -show" off into separate command "mhshow".
355
356         * Split "mhn -store" off into separate command "mhstore".
357
358         * Split "mhn -list" off into separate command "mhlist".
359
360         * Add sanity checks to context_find(), context_replace(),
361           and context_del(), to abort if context file hasn't been
362           read.
363
364         * Add calls to context_read(), to the beginning of all nmh
365           commands (instead of being called indirectly by context_find).
366
367         * Changes the "substitute" version of vsnprintf/snprintf for
368           operating systems without native versions, to just call the
369           native vsprintf(), and ignore the buffer length.   This is
370           faster, but less secure than the previous version that used
371           temporary files.  This should only be a problem for systems
372           which do not have a native snprintf(), and require `inc' to
373           be setuid/setgid.
374
375         * Lots more calls to sprintf/strcpy converted to snprintf/strncpy.
376
377         * Changes client() routine to take additional parameter, which is
378           the buffer length of the parameter "response".  Then added
379           buffer length checks for this parameter.
380
381         * Changed getws() to get_fields(), since that is apparently the
382           name of a wide character version of gets() on some archetitures.
383
384         * Lots of sprintf/strcpy calls converted to snprintf/strncpy.
385
386         * Change the code in most of the commands that take multiple
387           message names/sequences/ranges on the command, such that
388           the msgs array is expanded dynamically.  This removes most
389           of the limits on the length of command lines.
390
391         * Add additional parameter to copyip(), to specify the
392           maximum number of strings that can be copied (security
393           fix).
394
395         * Create new function getarguments(), to massage the argument
396           vector before parsing it (add any arguments from your
397           profile to the beginning of the argument vector).  This
398           also removed the general limit on the number of command line
399           arguments.
400
401 1998-07-04  Richard Coleman  <coleman@math.gatech.edu>
402
403         * Released nmh-0.27.
404
405         * Added a new command "delete", that is available during
406           a "whatnow" session.  It is equivalent to "quit -delete".
407
408         * Added another parameter to editfile (in whatnowsbr.c),
409           that controls whether editfile should remember the last
410           program that was exec'ed.  This way the whatnow command
411           "mime", will not be re-executed if "edit" is later given
412           with no arguments.
413
414         * Changed whatnowsbr.c, so that whatnow doesn't abort if
415           mhbuild returns an error.
416
417         * Added parameter to sendsbr(), so you may specify whether to
418           rename the draft file.
419
420         * Pass delay time to splitmsg() as a parameter, rather than
421           use a global variable.
422
423         * Moved code to rename draft file after sending message from
424           splitmsg and sendaux, to sendsbr.
425
426         * Removed all the code in viamail to split messages and then
427           mail them.  Replaced this with the standard sendsbr.c routines.
428
429         * Changed sendsbr(), so that when splitting messages into
430           messages of type "message/partial", the header fields that
431           are copied are more compliant with RFC-2046.
432
433         * Fixed mhbuild to track temporary files better.  They are
434           now correctly removed when mhbuild aborts.
435
436         * Created a new man page for "sendfiles".  The information
437           about "mhn -viamail" in the "mhn" man page was moved to
438           this new page.
439
440         * Changed the name of the "viamail" shell script to
441           "sendfiles".  Modified "sendfiles" to use the new
442           viamail program.
443
444         * Moved the functionality for "mhn -viamail" out of mhn,
445           and into a separate executable called "viamail".
446
447         * When storing MIME contents to a folder using mhn -store,
448           they are now accumulated in a temporary file, and then added
449           to the folder using folder_addmsg().
450
451         * Moved code to save content to a folder from store_content
452           to new function output_content_folder.
453
454         * Moved code to save content to file from store_content to
455           new function output_content_file.
456
457         * Moved code to parse storage format string from store_content
458           to new function parse_format_string.
459
460         * Fix copy_some_headers() in mhstoresbr.c, so that the
461           correct header fields in the first enclosing message/partial
462           will be copied (according to RFC2046), when using mhn -store
463           to reassemble messages of type message/partial.
464
465         * Fixed bug to openFTP() in mhparse.c, that caused the
466           tmp file to not be removed, when transferring a
467           message/external file from ftp.
468
469         * Moved the code in mhparse.c to process -auto switch (scan
470           contents for the attribute "name"), to a new function
471           "get_storeproc" in mhstoresbr.c.
472
473         * Moved routines to free data structures related to MIME
474           content from mhparse.c and mhbuildsbr.c, to new file
475           mhfree.c.
476
477         * Moved code to show/display MIME content into new
478           file mhshowsbr.c.
479
480         * Moved code to store MIME content from into
481           new file mhstoresbr.c
482
483         * Moved code to parse MIME content into new
484           file mhparse.c.
485
486         * Moved code to list information about MIME content
487           into new file mhlistsbr.c.
488
489         * Move part_ok(), type_ok(), content_error(), flush_errors(),
490           and set_endian() to new file mhmisc.c.
491
492         * Start to isolate the code to show, list, and store MIME
493           messages.  One side effect is that only one flag (-show,
494           -list, or -store) can be used at a time now.
495
496         * mhn -store -auto wasn't storing file in correct directory.
497
498         * Removed a few dead variables from sbr/ruserpass.c
499
500         * move code for creating tmp files, and renaming the
501           the composition draft in mhbuild, from build_mime()
502           to main().
503
504         * remove left-over code in mhbuild.c, mhbuildsbr.c, for
505           the -[no]auto switch (which isn't used in mhbuild).
506
507         * split mhn.c into mhn.c and mhnsbr.c (name later changed
508           to mhparse.c).
509
510         * split mhbuild.c into mhbuild.c and mhbuildsbr.c.
511
512 1998-05-25  Richard Coleman  <coleman@math.gatech.edu>
513
514         * Released nmh-0.26.
515
516         * Added (unlisted) options [no]dashstuffing to send, post,
517           and whatnow to determine whether to do RFC934 quoting
518           (dashstuffing) for encapsulated BCC messages.  The default
519           is still the same (dashstuffing).
520
521         * Changed the undocumented feature "nodashmunging" in forw
522           and mhl, into the documented feature "nodashstuffing".  The
523           default for forw, is still "dashstuffing" for backward
524           compatibility, although I don't believe that bursting
525           RFC934 digests is very common anymore.
526
527         * Added an option to define REALLYDUMB in the default config.h.
528           But it is not on by default.
529
530         * moved creation of config file mts.conf from zotnet/mts
531           to etc.  This simplified the Makefile in zotnet/mts.
532
533         * simplified directory support/general to etc.
534
535         * removed unneeded directory support/bboards.
536
537         * split getusername() into getusername() and getuserinfo().
538
539         * Changed getusr() routine to getusername().
540
541         * Slight cleanup in folder_pack.c on code that records the new
542           number of the "cur" message when packing.
543
544 1998-05-08  Richard Coleman  <coleman@math.gatech.edu>
545
546         * Released nmh-0.25.
547
548         * Change install process, so that hard linking the correct mts
549           library to libmts.a, is not necessary.  The final link process
550           uses the original name of the library.
551
552         * Fixed bug in flist.c and folder.c, so that symbolic links which
553           point to directories, will not decrement the number of directory
554           links remaining.
555
556         * Split the function list_content (in mhn.c and mhbuild.c) into
557           list_content and list_debug.
558
559         * Don't pack (folder -pack) an empty folder.
560
561         * Exit gracefully in flist.c, if no sequence is specified,
562           and no "Unseen-Sequence" is given in nmh profile.
563
564 1998-02-27  Richard Coleman  <coleman@math.gatech.edu>
565
566         * Released nmh-0.24.
567
568         * Small clarification to the man page for `ali'.
569
570         * Fix bug in inc.c so that if both flags `-file' and `-truncate'
571           are given, that order doesn't matter.
572
573         * Fix bug in seq_list.c when realloc'ing for
574           large sequence line.
575
576 1998-02-23  Richard Coleman  <coleman@math.gatech.edu>
577
578         * Released nmh-0.23.
579
580         * Add new section on "Transfer Encodings" to man page for mhbuild.
581
582         * In mhbuild.c, split compose_content into compose_content
583           (parse and execute composition string), and scan_content (scan content,
584           decided transfer encoding, check for clash with boundary string).
585           I did a good amount of rearranging of this code.
586
587         * Moved definitions for data structures for parsing MIME
588           messages from mhn.c and mhbuild.c to a new include
589           file h/mhnsbr.h.
590
591         * Small amount of rearranging in sendsbr.c
592
593         * Small changes to MAIL.FILTERING file.
594
595         * Add the file MAIL.FILTERING to nmh distribution.
596
597         * Add line to packf so that if message begins with
598           "X-Envelope-From:" field, it is converted to "From ".
599
600         * Fix packf to add "From " line to beginning of message,
601           even if Return-Path doesn't exist.
602
603         * Add note to MACHINES file that on Linux, configure
604           doesn't find the functions sigsetjmp/siglongjmp.
605
606         * Fix configuration for machines that don't have (or find)
607           sigsetjmp/siglongjmp.
608
609 1998-02-11  Richard Coleman  <coleman@math.gatech.edu>
610
611         * Released nmh-0.22.
612
613         * Add a configure check for sigsetjmp.  Add some conditional
614           #define's in h/signals.h in case it's not found.
615
616         * Added additional notes about -auto switch in mhn man page.
617
618         * Added note about MM_CHARSET environment variable to
619           mh-profile(5) man page.
620
621         * Fix signal problem in mhn.c (change setjmp/longjmp to
622           sigsetjmp/siglongjmp).
623
624 1998-02-09  Richard Coleman  <coleman@math.gatech.edu>
625
626         * Released nmh-0.22-pre1.
627
628         * Changed the first line in mhl.format from
629           " -- using template mhl.format -- " to a blank line.
630
631         * Added note about automimeproc to mh-profile man page.
632
633         * Reorganize the main entry point for parsing a MIME message
634           or file in mhn.  Add new function parse_file() as new main
635           entry point for parsing MIME files.
636
637         * Add note to mhn man page, that "mhn -file -" will accept the
638           source message on the standard input.
639
640         * Changed a sanity check in folder_realloc that was too strict.
641
642         * -norfc934mode is now the default for mhbuild,
643           rather than -rfc934mode.
644
645         * Fix mhbuild, so that Content-Description and RFC-822 comments
646           from #forw directive will be correctly included if there is
647           only one message.
648
649         * Change mhn to correctly default parts of multipart/digest to
650           message/rfc822 (leftover code from rfc934mode was removed).
651
652         * Restore HP specific code to zotnet/tws/lexstring.c.  Apparently
653           it is still needed.
654
655 1998-02-06  Richard Coleman  <coleman@math.gatech.edu>
656
657         * Released nmh-0.21.
658
659         * If the file given to mhbuild is "-", then accept the draft on
660           standard input, and output the MIME message to standard output.
661
662         * Cleaned up code in mhbuild.c that decides what transfer
663           encoding to use.
664
665         * Cleaned up code in mhbuild.c that decides what character set
666           to use for text contents.
667
668         * Removed old hpux specific code from zotnet/tws/lexstring.c
669
670 1998-02-02  Richard Coleman  <coleman@math.gatech.edu>
671
672         * Released nmh-0.21-pre2.
673
674         * Added the "decode" variable to mhl.format and mhl.header.
675
676         * Added new variable "decode" to mhlsbr.c to decode text in
677           header fields as per RFC-2047.
678
679         * Make sure that when decoding RFC-2047 header fields, that any
680           spaces at the ends of the encoded text are not ignored, but the
681           spaces between encoded word are.
682
683         * Removed #ifdef's for MIME.  MIME support is always compiled in.
684
685         * scan/inc will now decode both Subject and From lines as
686           RFC-2047 encoded header fields.
687
688         * Added new function write_charset_8bit() to sbr.  It returns
689           the character set to use for 8bit text in composition draft.
690           Changed mhbuild to use this function.
691
692         * Split mhn man page into man pages for mhn and mhbuild.
693
694         * mhn -show will only now only use default method for content
695           of type plain, if it is NOT a part of a multipart/alternative.
696
697         * Split mhn -build into mhbuild.  Did some code cleanup.
698
699         * Added support for %(decode) to fmtdump.c.
700
701         * check_charset() now accepts US-ASCII as a subset of any
702           ISO-8859-X character set.
703
704         * Changed the default "showproc" to mhl, instead of the
705           pager more.
706
707         * When reading file into mhn composition file, only need read
708           permissions, not write permissions.
709
710         * Added own version of strcasecmp to distribution, since
711           nmh calls it frequently with NULL pointers (ughh).
712
713         * Replaced uleq.c with strcasecmp.  Removed uleq.c from
714           distribution.
715
716 1998-01-22  Richard Coleman  <coleman@math.gatech.edu>
717
718         * Released nmh-0.21-pre1.
719
720         * If a message is missing charset parameter to text/plain, show
721           will assume US-ASCII, rather than just calling showmimeproc.
722
723         * Change show.c and mshcmds.c to use check_charset to see if text
724           message contains valid character set.
725
726         * Added new scan format file "scan.nomime" to support/general
727           that doesn't do any RFC-2047 decoding.
728
729         * Modified all the scan format files in support/general to do
730           RFC-2047 decoding of Subject field.
731
732         * Did more work on sbr/fmt_rfc2047.c, so that it will correctly
733           ignore whitespace between two valid encoded words, but not
734           between an encoded word and normal text.
735
736         * Created new file sbr/check_charset.c.  Moved code from
737           fmt_rfc2047.c to check for valid character set to this file.
738
739         * Added format escape %(decode) to decode contents of "str" register
740           as a RFC-2047 header field.
741
742         * The command install-mh now recognizes the switches -version
743           and -help.
744
745         * Added a new argument to print_help.c to decide whether to
746           print profile entries (needed for install-mh to prevent weird
747           loops).
748
749         * Changed folder_read.c and folder_realloc.c so that mp->lowoff
750           is initialize to max (mp->lowmsg, 1) rather than always 1.
751
752         * Changed macros for sequence/attribute manipulation so that
753           message status array doesn't need to always start at 1.
754
755         * Small cleanups in folder_realloc().
756
757 1998-01-09  Richard Coleman  <coleman@math.gatech.edu>
758
759         * Released nmh-0.20.
760
761         * Added configure option --with-pager=PAGER.
762
763         * Added configure option --with-editor=EDITOR.
764
765         * Changed the default format file for mhl (mhl.format) to
766           also ignore (not display) the header fields Content-Type,
767           Content-Transfer-Encoding, and Content-ID
768
769         * Fixed core dump in addrsbr.c when using %(proper) format function
770           and the To: line was missing.
771
772         * Added the file ZSH.COMPLETION to the distribution.
773
774 1998-01-04  Richard Coleman  <coleman@math.gatech.edu>
775
776         * Released nmh-0.20-pre2.
777
778         * Added new switch -snoop to both `msgchk' and `inc', so you can
779           watch the POP transaction.
780
781         * Changed "replgroupcomps" to check for Mail-Followup-To header
782           first, and use it if available.
783
784         * Changed "replcomps" to check for Mail-Reply-To header
785           first, and use it if available.
786
787 1998-01-03  Richard Coleman  <coleman@math.gatech.edu>
788
789         * Released nmh-0.20-pre1.
790
791         * Changed seq_list.c to dynamically enlarge the buffer for
792           collecting the message ranges in a long sequence line.
793           This should remove the last hard limit on the size of a
794           sequence line.
795
796         * Changed seq_read.c so that can read long sequence lines.
797           It will use multiple calls to m_getfld() when m_getfld()
798           returns the state FLDPLUS.
799
800         * Changed brkstring.c to dynamically add more space for pointers
801           if necessary.  This is needed when splitting up large sequence
802           lines.
803
804         * Did some small cleanups in seq_save.c.
805
806         * Added new switches `-[no]unseen' to rcvstore, to control
807           whether new messages are added to Unseen-Sequence.
808
809         * Moved locking routines (zotnet/mts/lock.c) to sbr/lock_file.c
810
811         * Changed the internal UNSEEN flag to SELECT_UNSEEN which is
812           more appropriate.  Changed the MHPATH flag to ALLOW_NEW.
813
814         * Changed "replcomps" to not include CC and TO lines so that
815           that reply message is only directed at the author of the
816           message to which you are replying.
817
818         * Added new switch `-group' to command repl, which causes repl
819           to use new forms file "replgroupcomps".  This is intended for
820           making group replies.
821
822         * Removed #ifdef for ATHENA.
823
824 1997-12-28  Richard Coleman  <coleman@math.gatech.edu>
825
826         * Released nmh-0.19.
827
828         * Fix repl,forw so that switch `-form file' will not abort
829           as ambiguious (silly mistake on my part).
830
831         * Cleaned up the mhn man page.  Added info about a few escapes
832           for the formatting/display strings that were not documented
833           (%%, %t).  Moved the BNF grammar for the mime composition file,
834           to the end of the man page.
835
836         * Added the options -[no]format to the command repl.  The
837           switch `-format' will filter the message to which you are
838           replying with the standard message filter "mhl.reply", which
839           is now included in the distribution.  The `-noformat' option
840           will negate the use of -format or -filter and not include
841           the message to which you are replying in the draft.
842
843         * Did some cleaning and reorganization on many of the man
844           pages.
845
846         * Added debugging switch `-debug' to mhparam, which displays
847           the values of all `procs' (and some other misc configuration
848           info) that nmh keeps in global variables.
849
850         * When using `refile -preserve', if a conflict occurs, then use
851           the next available number above the message number you wish
852           to preserve.
853
854         * In forw.c, split the code for creating MIME style forwarding
855           out of copy_draft, and into copy_mime_draft.
856
857         * Move routines in mark.c to print sequences, into new
858           file sbr/seq_print.c
859
860         * flist will now update the current folder.
861
862         * Added the switches -[no]fast to flist, to replace
863           -[no]total.  The previous switches are still accepted
864           but now undocumented.
865
866         * More reorganization in flist of the code for
867           traversing folders.
868
869         * The command "flist +foo -all" will now scan the folder
870           "foo" and all its 1st level children.
871
872         * Add missing include file <h/mh.h> to sbr/snprintf.c
873
874         * Fix alarm bug in rcvtty, so that when it calls external
875           process, the alarm is never longer than 30 minutes.
876
877 1997-12-17  Richard Coleman  <coleman@math.gatech.edu>
878
879         * Released nmh-0.18.
880
881         * Fixed bug in mark, so that "mark -list -seq foo" will
882           correctly indicate if "foo" is a private sequence.  I found
883           this bug mentioned in Jerry Peek's book.
884
885         * Simplified the code in seq_setcur(), since seq_addmsg() now
886           retains the public/private status of sequences.
887
888         * Changed sequence handling so that if the switches -public
889           or -nopublic, are not specified for the commands mark, pick,
890           or rcvstore, then existing sequences will retain their
891           previous public/private status.
892
893         * mhparam now handles the mh-sequences profile entry
894           correctly.
895
896         * flist -all will now also check readonly folders (for
897           private sequences).
898
899         * Improve the leaf optimization for folder command.
900           It will now track the number of directories in a folder,
901           and stop stat'ing files once it has hit all the subfolders.
902
903         * Renamed m_getfolder to getfolder.  Changed getfolder to
904           take option to determine whether it should get current
905           folder, or just default folder (Inbox).  Changed rcvstore,
906           inc, and rmf to use the new getfolder.
907
908         * flist now indicates if a sequence is private.
909
910         * Change WUNTRACED to 0, in pidwait.c, so that commands will
911           wait for stopped processes.
912
913         * conflict will dynamically allocate space for group names,
914           so it can now handle system with more than 100 groups.
915
916 1997-12-09  Richard Coleman  <coleman@math.gatech.edu>
917
918         * Released nmh-0.18-pre4.
919
920         * Check if we have enough message status space, before we
921           call folder_realloc() in burst, mhpath, and m_draft().
922
923         * mhn will now correctly identify a formatting string of "-"
924           for the option -store, and send content to stdout.
925
926         * Change the way that memory for message status is
927           allocated.  It is dynamcially allocated separately from
928           the folder/message structure.  This required changing
929           folder_read.c, folder_realloc.c, folder_free.c.
930
931         * Removed all the MTR code (experimental code for message
932           status allocation).
933
934         * Renamed m_readfolder.c to folder_read.c and simplified
935           the code.
936
937         * Renamed m_freefolder.c to folder_free.c.
938
939         * Add function trim() to slocal.c to pretty print
940           the debugging output.
941
942         * Changed the name of m_packfolder() to folder_pack().
943           Changed the name of m_remsg() to folder_realloc().
944
945 Wed Dec  3 23:33:38 1997  Richard Coleman  <coleman@math.gatech.edu>
946
947         * Released nmh-0.18-pre3.
948
949         * Changed installation to add `flists' which is hard linked
950           to `flist'.  This is a equivalent to `flist -all'.
951
952         * For flist, -showzero is on by default.
953
954         * Major changes to flist.  Default is now for flist to search
955           current folder.  The switch `-all' is now used to specify
956           searching all top level folders.  The new switch `-showzero'
957           is used to print out folders that don't contain any messages
958           in the given sequence.
959
960         * Split BuildFolderList in flist.c into 2 functions
961           (BuildFolderList, BuildFolderListR).  Changed these functions
962           so that flist now does better leaf optimization, and will stop
963           stat'ing directory entries when it knows it has hit all the
964           subdirectories of a given directory.
965
966         * Reorganized code in folder.c, so that all relevant folders
967           are scanned first and information recorded.  Then all the
968           folder summaries at printed out at one time.
969
970         * Made the options of folder(s) more orthogonal.  Now
971           "folder -all -noheader -nototal" will do the right thing.
972
973         * Added `-noall' switch to folder, for completeness.
974
975         * Changed the default mode for creation of new folders
976           to 0700 (was 0711).
977
978         * Slightly changed the format for flist.  It now indicates
979           if a folder is current.  Also the width of the various
980           fields are now calculated at runtime.
981
982         * Changed the format for folder(s).  Folder names
983           are now left justified.  The width of the various fields
984           are calculated at runtime.
985
986 Sun Nov 30 19:14:53 1997  Richard Coleman  <coleman@math.gatech.edu>
987
988         * Released nmh-0.18-pre2.
989
990         * Add paragraph to man page for install-mh and to INSTALL file
991           about checking for global mh.profile.
992
993         * Renamed m_find() to context_find().
994           Renamed m_replace() to context_replace().
995           Renamed m_delete() to context_del().
996           Renamed m_update() to context_save().
997           Renamed m_getdefs() to context_read().
998           Renamed m_foil() to context_foil().
999
1000         * Change rcvstore to use routine folder_addmsg(), instead of
1001           adding message to folder itself.
1002
1003         * Changed refile, so that if the switch -preserve is used,
1004           and a conflict occurs for a particular folder, then folder_addmsg()
1005           will just use next highest available number for that folder,
1006           instead of exiting.
1007
1008         * Make folder_addmsg() more robust.  It will make repeated
1009           attempts to link file into folder if link returns with
1010           the error EEXIST.
1011
1012         * Fix bug, so that that if forking sendmail, HELO will be sent
1013           unless clientname: option is defined but empty (so now it
1014           is the same as the direct smtp code).
1015
1016         * Changed sprintb to snprintb (now we pass the buffer length
1017           to new routine).  Changed code to use new function.
1018
1019         * Added snprintf to sbr. Added configure check to build it
1020           if you don't have a native version (but haven't changed much
1021           code to use it yet).
1022
1023 Thu Nov 13 18:42:18 1997  Richard Coleman  <coleman@math.gatech.edu>
1024
1025         * Released nmh-0.18-pre1.
1026
1027         * Fixed alarm bug in slocal, so that alarm is never
1028           called with a value larger than 30 mintues.
1029
1030         * Fixed race condition in rmm and refile, so that
1031           context is updated before external rmmproc is called.
1032
1033         * Removed all the OVERHEAD code.
1034
1035         * Move code to add message to folder from refile.c
1036           to folder_addmsg.c
1037
1038 Fri Jul 25 19:39:29 1997  Richard Coleman  <coleman@math.gatech.edu>
1039
1040         * Did some rearranging of the internals of inc.c.
1041
1042         * Make -inplace the default for anno, forw, dist, and repl.
1043
1044         * Changed --enable-smtp to --with-mts={smtp,sendmail}
1045
1046         * Created new directory mts/sendmail for direct sendmail
1047           interface (although it currently still uses SMTP).
1048
1049         * Removed all the TMA (trusted mail agent) code
1050
1051         * Removed all the TTYD (terminal access daemon) code
1052
1053         * Removed all the MF (uucp filtering) code.
1054
1055         * Removed all the code for BERK.
1056
1057         * Removed all the code for stand-alone delivery (MHMTS).
1058
1059         * Split the file mts/sendmail/smail.c into sendmail.c and
1060           smtp.c.  Changed the name of the directory to mts/smtp.
1061
1062         * Changed autoconf to use @sysconfdir@ for location of
1063           configuration files.
1064
1065         * Changed #define in mhn.c from FTP to BUILTIN_FTP.
1066
1067 Mon Jul 21 03:22:34 1997  Richard Coleman  <coleman@math.gatech.edu>
1068
1069         * Released nmh-0.17.
1070
1071         * MAKEDEFS weren't passed down to recursive makes correctly.
1072
1073         * slocal.c now checks for UTMP_FILE and _PATH_UTMP instead
1074           of hard-coding "/etc/utmp".
1075
1076         * rcvtty.c check for _PATH_UTMP if UTMP_FILE is not
1077           defined.
1078
1079         * Remove configure checks for ulong and ushort.  Changed
1080           code to just use unsigned {short, long}.
1081
1082         * Change addmsg function in refile.c to return new
1083           number of refiled message.
1084
1085         * Added check in get_returnpath for empty unixbuf.
1086
1087         * Cleanup of sbr/pidstatus to use more POSIX macros
1088           for return value of wait().
1089
1090         * Change configure to also check /bin for "more".
1091
1092 Sat Jul 12 00:02:23 1997  Richard Coleman  <coleman@math.gatech.edu>
1093
1094         * Released nmh-0.16.
1095
1096 Mon Jun 23 20:13:24 1997  Richard Coleman  <coleman@math.gatech.edu>
1097
1098         * Added automimeproc, which should replace automhnproc.
1099
1100         * multipart messages will no longer abort for messages
1101           of type 8bit or binary (although we still can't really
1102           deal with binary messages, yet).
1103
1104         * Fix double free of c_storage.  From John MacMillan.
1105
1106         * mhn now treats unknown subtypes of "text" as text/plain.
1107
1108         * mhn changed so that specifying mhn-show-multipart, or
1109           mhn-show-multipart/{mixed, alternate, etc...) will override
1110           the use of the internal method for displaying these types.
1111           Previously mhn would always use the internal method for subtypes
1112           mixed, alternate, digest, and parallel (even if an alternate
1113           method was specified in mhn.defaults).
1114
1115         * mhn show treats unknown subtypes of multipart, as type
1116           multipart/mixed (as specified RFC2046).
1117
1118         * mhn checks for the parameter "name" rather than "x-name".
1119           From MH-6.8.4 patch.
1120
1121         * Fix double free of ctinfo in user_content when using
1122           #forw with single message.  From John MacMillan (and
1123           MH-6.8.4 patch).
1124
1125         * Changed -mhnproc switch for show, to -showmimeproc.
1126
1127         * Changed profile entry "mhnproc" to "showmimeproc".
1128
1129         * Added "mime" option to "whatnow", which calls the program
1130           "buildmimeproc" (default is mhn -build) to process MIME
1131            composition files.
1132
1133         * Added -build switch to mhn, to process MIME composition
1134           files.
1135
1136         * Did some reorganizing of mhn.c.
1137
1138         * Changed casting in mts/sendmail/smail.c from (char) to
1139           (signed char) so SMTP reply codes work correctly for machines
1140           which used unsigned chars by default.
1141
1142 Sat Jun 21 01:21:47 1997  Richard Coleman  <coleman@math.gatech.edu>
1143
1144         * Released nmh-0.15.
1145
1146         * Added new form "scan.unseen" to distribution.  It marks messages
1147           which are in any sequence in Unseen-Sequence.
1148
1149         * Do some rearranging of date/time code in zotnet/tws/dtime.c
1150
1151         * Fix sign extension bugs in fmt_scan.c.
1152
1153         * Fix m_atoi.c so that strings ending in non-digit characters
1154           return 0.
1155
1156         * Split code in burst.c so that finding delimiters of digested
1157           messages and bursting a message into multiple messages are
1158           two separate functions (find_delim and burst).
1159
1160         * Add workaround fo AC_PATH_PROG in configure.in, so
1161           that BSD4.4 machines can find sendmail, vi, more.
1162
1163         * Added "-width" option to rcvtty.
1164
1165         * Change a few variable names in zotnet/mts/client.c since
1166           they conflict with defines on AIX.
1167
1168         * Makefile in zotnet/tws assumes lexing of dtimep.lex was
1169           unsuccessful if resulting file is less than 500 lines long
1170           (rather than 10, which was previous value), since AIX
1171           sed gives mangled file of about 200 lines.
1172
1173         * Extract code in rcvstore.c to link message into folder,
1174           and put in own subroutine.
1175
1176         * Extract code in refile.c to link message into folder,
1177           and put in own subroutine.
1178
1179         * Moved code to remove messages from folder into own
1180           routine "folder_delmsgs" in sbr.  Changed rmm.c and
1181           refile.c to use new routine.
1182
1183 Fri May 16 06:09:31 1997  Richard Coleman  <coleman@math.gatech.edu>
1184
1185         * Renamed m_seqok to seq_nameok.
1186
1187         * Changed m_setunseen, msh, mshcmds, flist, and scan to use
1188           seq_getnum.
1189
1190         * Changed m_seqflag to return the number of a sequence rather
1191           than its bit flag.  Changed its name to seq_getnum and renamed
1192           file to sbr/seq_getnum.c.
1193
1194         * Removed function m_seqnew and file sbr/m_seqnew.c since it is
1195           no longer used.
1196
1197         * Added zero switch to m_seqadd function to zero out bits before
1198           adding message to sequence.
1199
1200         * Renamed function m_setvis to m_setunseen, and renamed
1201           corresponding file in sbr.
1202
1203         * Renamed function m_setseq to m_setprev, and renamed corresponding
1204           file in sbr.
1205
1206         * Changed mark.c and pick.c to use m_seqaddsel and m_seqdelsel.
1207
1208         * Added new function m_seqdelsel to m_seqdel.c, which deletes
1209           all selected messages from a sequence.
1210
1211         * Added new function m_seqaddsel to m_seqadd.c, which adds all
1212           selected messages to a sequence.
1213
1214         * Split sbr/m_seqnew.c into m_seqadd.c, m_seqdel.c, m_seqnew.c,
1215           and m_seqok.c.
1216
1217 Thu May 15 00:53:17 1997  Richard Coleman  <coleman@math.gatech.edu>
1218
1219         * Renamed function pack_folder to m_packfolder, and moved it
1220           from uip/folder.c into its own file sbr/m_packfolder.c
1221
1222 Wed May 14 23:38:00 1997  Richard Coleman  <coleman@math.gatech.edu>
1223
1224         * Changed function m_gmsg to m_readfolder.  Renamed file
1225           sbr/m_gmsg.c to sbr/m_readfolder.c.
1226
1227 Mon May  5 19:57:11 1997  Richard Coleman  <coleman@math.gatech.edu>
1228
1229         * Expanded rcvtty man page, and added small patch from
1230           MH-6.8.4 distribution.
1231
1232 Fri May  2 15:24:34 1997  Richard Coleman  <coleman@math.gatech.edu>
1233
1234         * Released nmh-0.14.
1235
1236         * Comment out configure test and code for tgetent to allocate its
1237           own termcap buffer when passed a NULL argument.
1238
1239 Sat Apr 26 03:46:38 1997  Richard Coleman  <coleman@math.gatech.edu>
1240
1241         * Added new options `-checkmime', `-nocheckmime', and `-mhnproc'
1242           to show.  Restructured code to handle options to various
1243           `procs' better.  Deprecated `-noshowproc' option and NOMHNPROC
1244           environment variable.
1245
1246         * Added new man page `mh-draft' which documents the
1247           draft folder facility in nmh.
1248
1249         * Renamed fmtsbr.h to fmt_scan.h.  Renamed fmtcompile.h
1250           to fmt_compile.h.
1251
1252         * split fmtsbr.c into fmt_scan.c and fmt_new.c.  Renamed
1253           fmtcompile.c to fmt_compile.c, and formataddr.c to
1254           fmt_addr.c.
1255
1256         * `send -help' wasn't showing the -(no)mime and -split
1257           options.
1258
1259 Fri Apr 25 02:50:36 1997  Richard Coleman  <coleman@math.gatech.edu>
1260
1261         * Released nmh-0.13.
1262
1263         * Changed mhpath so it doesn't abort if a message sequence
1264           such as "mhpath all" expands to more than 1000 messages.
1265           Also mhpath now dynamically reallocated space for message
1266           names (The number of command line arguments is still limited
1267           to MAXARGS).
1268
1269         * Did some general restructuring of the code in folder.c
1270           that checks for folder information, and prints it.
1271
1272 Thu Apr 24 01:04:37 1997  Richard Coleman  <coleman@math.gatech.edu>
1273
1274         * Changed `folder' to reallocate space for folder names if
1275           necessary.  So `folders' can now handle more than 300 folders.
1276
1277 Tue Apr 22 14:01:26 1997  Richard Coleman  <coleman@math.gatech.edu>
1278
1279         * Change configure to use a compile check to see if the tm struct
1280           has tm_gmtoff, rather than using egrep.
1281
1282 Mon Apr 21 02:19:17 1997  Richard Coleman  <coleman@math.gatech.edu>
1283
1284         * Released nmh-0.12.
1285
1286         * Had set_exists and unset_exists macros backwards.
1287
1288         * Released nmh-0.11.
1289
1290 Thu Apr 10 02:39:53 1997  Richard Coleman  <coleman@math.gatech.edu>
1291
1292         * Added documentation to mh-profile.man about the various
1293           `procs' (mhlproc, showproc, lproc, etc...).
1294
1295         * Replace the bit twiddling for SELECTED, UNSEEN, and
1296           mp->attrstats with macros.
1297
1298         * If system doesn't have SIGEMT (like Linux), then use SIGTERM
1299           in msh.c instead.
1300
1301         * Change fstat to stat in m_gmsg.c since Linux wants
1302           to hide dd->dd_fd.
1303
1304         * Merge Linux patch sent in by Michel Oosterhof (original
1305           patch from bsa@kf8nh.wariat.org).
1306
1307         * Document an undocumented MH feature.  mhn -form mhl.null
1308           will suppress the display of the message header.
1309
1310         * mhparam will now return "mhparam etcdir".
1311
1312         * Add catproc to /config/config.c and use that in show.c
1313           and mshcmds.c, rather than hard coding in /bin/cat.
1314
1315         * Add mhnproc to the list of `procs' in mh-profile.man.
1316
1317         * Add configure test for lorder and tsort commands.
1318
1319         * Commented out the padding in the `msgs` struct in h/mh.h
1320
1321         * Change m_gmsg.c to allocate elements to the `info' array by
1322           500 elements at a time (rather than MAXFOLDERS / 5).
1323
1324         * Add note to man page for mhmail that zero length messages are
1325           not sent.  Need to use -body "" to send empty messages.
1326
1327         * zotnet/mts/mts.c : compare character with '\0', not NULL.
1328
1329         * sbr/getcpy.c : assign '\0' to character, not NULL.
1330
1331         * add m_fmsg to most programs in uip so that they explicitly free
1332           folder/message structure when done with folder.
1333
1334         * uip/slocal.c : cleanup processing of sender.  Make sure it is
1335           defined even if message is missing "From " line.
1336
1337 Mon Mar 31 03:37:35 1997  Richard Coleman  <coleman@math.gatech.edu>
1338
1339         * Released nmh-0.10.
1340
1341 Sun Mar 30 21:46:17 1997  Richard Coleman  <coleman@math.gatech.edu>
1342
1343         * Add configure check for <locale.h>.  Turn on LOCALE support
1344           by default.
1345
1346 Thu Mar 20 03:21:24 1997  Richard Coleman  <coleman@math.gatech.edu>
1347
1348         * Reversed previous decision to retain "From " lines in slocal.
1349           The "From " line is now removed from all messages.
1350
1351         * inc now saves the date from the "From " envelope in the
1352           Delivery-Date header for all messages.
1353
1354         * sbr/m_getfld.c: Clean up processing of Return-Path and
1355           Delivery-Date from the "From " envelope.
1356
1357 Mon Mar 17 19:03:36 1997  Richard Coleman  <coleman@math.gatech.edu>
1358
1359         * client.c: cast iaddr to int before comparing return value
1360           of inet_addr with NOTOK.
1361
1362 Tue Mar 11 04:38:10 1997  Richard Coleman  <coleman@math.gatech.edu>
1363
1364         * Grep test for signal names was failing on some OS'es because
1365           of missing tabs in regex.
1366
1367 Sat Mar  8 01:58:22 1997  Richard Coleman  <coleman@math.gatech.edu>
1368
1369         * Released nmh-0.09.
1370
1371         * Move config files and format files to *.old before installing.
1372
1373         * Add configure check for killpg.
1374
1375         * msh.c: include <termios.h> instead of <termio.h> and
1376           <sys/ioctl.h>.
1377
1378         * prompter.c: don't include <sys/ioctl.h> anymore.
1379
1380 Thu Mar  6 04:03:24 1997  Richard Coleman  <coleman@math.gatech.edu>
1381
1382         * Added `-mime' and `-nomime' options to `repl'.
1383           From MH-6.8.4 diff.
1384
1385 Tue Mar  4 03:10:37 1997  Richard Coleman  <coleman@math.gatech.edu>
1386
1387         * ruserpass.c : removed conflicting prototypes.
1388
1389         * rcvtty.c : Fixed rcvtty to obey terminal permissions granted
1390           by `mesg' command.  Previously only worked on BSD machines.
1391
1392 Mon Mar  3 00:18:59 1997  Richard Coleman  <coleman@math.gatech.edu>
1393
1394         * rcvtty.c : Changed to use #define UTMP_FILE (if exists) rather
1395           than hard coded "/etc/utmp".
1396
1397         * Released nmh-0.08.
1398
1399         * Changed slocal to lock .maildelivery (or file given by -maildelivery)
1400           when accessing ndbm/db file for duplicate suppression, instead of
1401           locking database itself.
1402
1403 Thu Feb 27 05:28:09 1997  Richard Coleman  <coleman@math.gatech.edu>
1404
1405         * Added slocal action `mmdf' to deliver to a file in mmdf format.
1406
1407         * Changed the slocal actions `file' and `>' to always deliver in
1408           mbox (uucp) format rather than be determined by RPATHS config
1409           option.
1410
1411         * Changed the slocal action `mbox' to deliver in mbox (uucp) format
1412           rather than mmdf format.
1413
1414         * slocal now adds Delivery-Date field to all messages (previously it
1415           only added it to messages when delivering them to a file). The
1416           "From " line is now retained on all messages if compiling with
1417           RPATHS, rather than being discarded.
1418
1419         * rcvpack no longer adds the Delivery-Date field to messages.
1420
1421 Sun Feb 23 22:03:54 1997  Richard Coleman  <coleman@math.gatech.edu>
1422
1423         * Removed the script packmbox, since it's functionality has been
1424           added to packf.
1425
1426         * Changed packf so that it uses mbox (uucp) format by default
1427           rather than mmdf format.  Added options -mbox and -mmdf to
1428           packf so you can choose the preferred format.
1429
1430         * Changed rcvpack so that it uses mbox (uucp) format by default
1431           rather than mmdf format.  Added options -mbox and -mmdf to
1432           rcvpack so you can choose the preferred format.
1433
1434 Tue Feb 18 00:01:05 1997  Richard Coleman  <coleman@math.gatech.edu>
1435
1436         * Changed nmh to use dot locking by default (although you
1437           can still easily change this in config.h).
1438
1439         * Simplified locking code.  Removed code allowing setting of
1440           locking type in mts.conf.  Now the locking type and locking
1441           directory (if any) can only be set at compile time.
1442
1443 Fri Feb 14 02:49:18 1997  Richard Coleman  <coleman@math.gatech.edu>
1444
1445         * Prefer getting timezone information from tm->gmtoff rather
1446           than tzset and external timezone variable.
1447
1448 Thu Feb 13 00:35:45 1997  Richard Coleman  <coleman@math.gatech.edu>
1449
1450         * Fixed typo in ruserpass.c in the variable toktabs.
1451
1452         * When ruserpass was added to LIBOBJS, it was missing
1453           the suffix.
1454
1455         * Released nmh-0.07.
1456
1457 Tue Feb 11 01:29:47 1997  Richard Coleman  <coleman@math.gatech.edu>
1458
1459         * Add check to configure, so that if ruserpass, or _ruserpass
1460           is not found, build version of ruserpass in sbr.
1461
1462         * Added define's to discard.c, m_getfld.c, and scansbr.c so
1463           the code that manipulates internals of stdio, will build
1464           on SCO 5.x.
1465
1466         * Added #define to control whether to compile the simple
1467           built-in FTP client in mhn.
1468
1469         * Added configure check for ushort and ulong.  Change code
1470           to use ushort/ulong rather than u_short/u_long.
1471
1472         * A couple of small cleanups in locking code.
1473
1474         * Added configure check for gmtoff element in struct tm.
1475
1476         * Added configure check for tzset.
1477
1478 Fri Feb  7 03:01:57 1997  Richard Coleman  <coleman@math.gatech.edu>
1479
1480         * Released nmh-0.06.
1481
1482         * Removed code for machines that don't have socket
1483           interface (how could they get mail anyway?).
1484
1485         * Removed code for BSD41 machines.  I don't think there are
1486           many such machines around anymore.
1487
1488         * Add configure check for function uname, and prefer it
1489           over gethostname.  General cleanup of zotnet/mts/mts.c.
1490
1491         * Change all `lseek' calls to use POSIX symbolic constants
1492           SEEK_SET, SEEK_CUR, SEEK_END.
1493
1494 Thu Feb  6 01:16:30 1997  Richard Coleman  <coleman@math.gatech.edu>
1495
1496         * Check lex generated file in zotnet/tws and use
1497           pre-generated version if necessary.
1498
1499         * Released nmh-0.05.
1500
1501         * Change to use reliable signals on all platforms that have
1502           sigaction.  Change so that interrupted system calls are
1503           restarted for all signals except SIGALRM.  This fixes alarm
1504           handling code in smail.c for BSD based systems.
1505
1506         * Added lorder and tsort commands so that created libs can
1507           be linked in one pass.
1508
1509 Tue Feb  4 01:33:00 1997  Richard Coleman  <coleman@math.gatech.edu>
1510
1511         * Changed pidwait so that while it is waiting for a child,
1512           it should block signals rather than ignore them.
1513
1514 Mon Feb  3 21:05:30 1997  Richard Coleman  <coleman@math.gatech.edu>
1515
1516         * Add checks to configure for dbm_open and -lndbm.
1517
1518 Thu Jan 30 05:15:42 1997  Richard Coleman  <coleman@math.gatech.edu>
1519
1520         * folder -pop and folder -push were freeing some memory too
1521           quickly, which caused the entry popped from the stack to not
1522           become the current folder.
1523
1524 Wed Jan 29 01:28:02 1997  Richard Coleman  <coleman@math.gatech.edu>
1525
1526         * Released nmh-0.04.
1527
1528         * Define ospeed and PC in termsbr.c is OS doesn't have
1529           it.
1530
1531 Sun Jan 26 20:25:10 1997  Richard Coleman  <coleman@math.gatech.edu>
1532
1533         * editfile will create a symbolic link to the altmsg if it
1534           can't make a link, on any machine supporting lstat.  Formerly
1535           this would happen only on BSD42 based machines.
1536
1537 Sat Jan 25 22:54:26 1997  Richard Coleman  <coleman@math.gatech.edu>
1538
1539         * traverse (in popsbr.c) wasn't calling va_start before using
1540           variable argument list.  Fixes core dump in inc when using POP.
1541
1542 Fri Jan 24 03:27:59 1997  Richard Coleman  <coleman@math.gatech.edu>
1543
1544         * The variable pass in remotemail needed to be set to
1545           NULL.  (From MH-6.8.4 diff).  Fixes core dump of msgchk when
1546           using POP.
1547
1548         * inc and msgchk were using -rpop by default when configured
1549           with POP support.  Default is now -norpop.
1550
1551 Thu Jan 23 02:01:17 1997  Richard Coleman  <coleman@math.gatech.edu>
1552
1553         * By default, post will now give the SMTP HELO command with
1554           the local hostname.  If you specify a hostname with the
1555           clientname: option in mts.conf file, post will give the
1556           HELO command with that name instead.  If the argument to the
1557           clientname: option is empty, no HELO command is given.
1558           (From the MH-6.8.4 diff)
1559
1560 Wed Jan 22 01:55:45 1997  Richard Coleman  <coleman@math.gatech.edu>
1561
1562         * When using `-help' for a command, it will also print its
1563           profile compents from .mh_profile. (From MH-6.8.4 diff)
1564
1565         * "slocal -file" will now correctly takes its input from
1566           a file (currently need to specify full path).
1567
1568 Sun Jan 19 20:37:21 1997  Richard Coleman  <coleman@math.gatech.edu>
1569
1570         * "slocal -debug" will now issue a warning if a non-blank
1571           line in the .maildelivery file has less than 5 fields.
1572
1573 Sat Jan 18 02:26:41 1997  Richard Coleman  <coleman@math.gatech.edu>
1574
1575         * Changed slocal so that code for duplicate suppression
1576           (MH config was MSGID) is always built. Added the options
1577           -[no]suppressdup to slocal to turn this on/off.
1578
1579 Thu Jan 16 00:26:34 1997  Richard Coleman  <coleman@math.gatech.edu>
1580
1581         * Released nmh-0.03.
1582
1583         * Fixed problem where mark would core dump if no
1584           .mh_sequence file existed.
1585
1586         * Fixed problem where slocal would core dump if -debug
1587           option was given, and certain headers were missing.
1588
1589         * Added patch to slocal to add `folder' (+) action, which
1590           is shorthand for piping message to rcvstore.  Updated
1591           man page.
1592
1593 Wed Jan 15 21:30:17 1997  Richard Coleman  <coleman@math.gatech.edu>
1594
1595         * Changed flist option -unseen to -[no]all.  Cleaned up
1596           flist man page.
1597
1598 Fri Jan 10 20:36:33 1997  Richard Coleman  <coleman@math.gatech.edu>
1599
1600         * Fixed flist.  Changed the profile component `Folder-Order'
1601           to `Flist-Order.  Added option `-sequence' to flist, so
1602           you can specify the name of the sequence to search for.
1603
1604 Thu Jan  9 00:20:48 1997  Richard Coleman  <coleman@math.gatech.edu>
1605
1606         * A few minor portability cleanups.  Changed to use PATH_MAX
1607           rather than MAXPATHLEN.  Don't assume ospeed variable exists
1608           in termsbr.c.  Removed some conflicting prototypes.
1609
1610 Wed Jan  8 11:05:02 1997  Richard Coleman  <coleman@math.gatech.edu>
1611
1612         * Add configure test to check if tgetent will accept NULL
1613           and allocate its own buffer.  Borrowed from zsh.
1614
1615         * Changed libpath to etcpath.
1616
1617 Mon Jan  6 04:15:35 1997  Richard Coleman  <coleman@math.gatech.edu>
1618
1619         * Cleaned up source code and Makefiles, so that if your `make'
1620           supports the VPATH option, you can build nmh in a different
1621           directory from where the source code is located.
1622
1623 Fri Jan  3 05:05:18 1997  Richard Coleman  <coleman@math.gatech.edu>
1624
1625         * Released nmh-0.02.
1626
1627 Wed Jan  1 17:41:52 1997  Richard Coleman  <coleman@math.gatech.edu>
1628
1629         * Split mhook man page into man pages for rcvdist, rcvpack,
1630           and rcvtty.
1631
1632 Tue Dec 31 03:07:48 1996  Richard Coleman  <coleman@math.gatech.edu>
1633
1634         * Changed code to use strerror, rather than using sys_errlist
1635           and sys_nerr directly.
1636
1637 Mon Dec 30 02:15:25 1996  Richard Coleman  <coleman@math.gatech.edu>
1638
1639         * -compat switch from install-mh removed.
1640
1641         * Changed the default POP port from "pop" to "pop3".
1642
1643 Sat Dec 28 13:25:05 1996  Richard Coleman  <coleman@math.gatech.edu>
1644
1645         * Changed mhn_defaults to mhn.defaults.  Changed create_mhn_defaults
1646           (again) to mhn.defaults.sh.  Changed find_program (again) to
1647           mhn.find.sh.  mhn.defaults.sh now takes the search path
1648           as an argument.  Default search path is now specified in Makefile
1649           rather than in script.
1650
1651 Fri Dec 27 16:34:01 1996  Richard Coleman  <coleman@math.gatech.edu>
1652
1653         * Changed mtstailor file to mts.conf.  Updated man pages.
1654
1655         * Changed si_value to si_val in mhn.c, since it conflicts with
1656           macro defined on Solaris.
1657
1658 Thu Dec 26 02:50:15 1996  Richard Coleman  <coleman@math.gatech.edu>
1659
1660         * Added --enable-nmh-mhe (and --disable-nmh-mhe) to enable/disable
1661           support for Emacs front-end mhe.  It is on by default.
1662
1663         * Added the following configure options: --enable-nmh-pop to
1664           enable client side pop support, --enable-nmh-smtp to enable
1665           SMTP support.  Client-side pop support now compiles.  Man
1666           pages for inc, msgchk, mh-chart now correctly added pop
1667           options if enabled.
1668
1669 Tue Dec 24 14:33:20 1996  Richard Coleman  <coleman@math.gatech.edu>
1670
1671         * Added configure test for bug in C libraries where linker
1672           can't find ruserpass, but can find _ruserpass.
1673
1674         * Fixed configure test so that termcap variable ospeed is
1675           correctly found.
1676
1677 Mon Dec 23 19:40:17 1996  Richard Coleman  <coleman@math.gatech.edu>
1678
1679         * Source files converted to ANSI C.
1680         
1681         * md5 now compiled separately rather than being included
1682           in mhn.c.  Changed md5 to use memset and memcpy.
1683
1684 Fri Dec 20 02:29:37 1996  Richard Coleman  <coleman@math.gatech.edu>
1685
1686         * Collected the error routines adios, advise, admonish, and advertise
1687           into one file (error.c), and did some rearranging of the code.
1688
1689 Thu Dec 19 19:05:29 1996  Richard Coleman  <coleman@math.gatech.edu>
1690
1691         * Added awk script sigmsg.awk (originally written by
1692           Geoff Wing <mason@werple.apana.org.au> for zsh) to
1693           automatically generate signal messages for pidstatus.c.
1694           Added files sbr/signals.c, h/signals.h.  Code now uses
1695           sigprocmask to block signals (if available).  Code now uses
1696           signal blocking on non-BSD machines.
1697
1698 Wed Dec 18 01:55:17 1996  Richard Coleman  <coleman@math.gatech.edu>
1699
1700         * Add configure check for ATTVIBUG.  From Soren's mh autoconf work.
1701
1702         * Released nmh-0.01.
1703
1704         * Added configure code to check for type of signals functions
1705           you have (POSIX or BSD style signals).  Added function
1706           SIGPROCMASK to simulate sigprocmask on machines that don't
1707           have POSIX signals.
1708
1709 Fri Dec 13 19:40:48 1996  Richard Coleman  <coleman@math.gatech.edu>
1710
1711         * Added -version switch to all commands.  Also added to
1712           their man pages.
1713
1714 Mon Dec  9 16:36:54 1996  Richard Coleman  <coleman@math.gatech.edu>
1715
1716         * Renamed uip/trmsbr.c to termsbr.c and changed it to use
1717           POSIX termios.h style functions if present.
1718
1719 Tue Dec  3 16:18:39 1996  Richard Coleman  <coleman@math.gatech.edu>
1720
1721         * Changed support/general/bootmhn.sh to output new mhn_defaults
1722           file to standard output by default (makes it easier for testing).
1723           Changed name of script to create_mhn_defaults.  Changed bootmhn.findit
1724           script to find_program.
1725
1726 Sun Dec  1 10:00:00 1996  Richard Coleman  <coleman@math.gatech.edu>
1727
1728         * Added patch to uip/folder.c from exmh distribution to
1729           speed up -recurse option.
1730
1731         * Added flist command from exmh distribution.  It doesn't work
1732           yet, but it compiles :-)
1733
1734         * Changed default location for install to /usr/local/nmh/{bin,etc,lib,man}.
1735           Split files so that format and configuration files go in nmh/etc, and
1736           support binaries go in nmh/lib.  Of course, all this can now be changed
1737           in the top level Makefile.
1738
1739         * Started with mh-6.8.3 as based and converted to autoconf.
1740           Rewrote all the Makefiles.  Currently only works with sendmail/smtp.
1741           Pop support and plenty of other things, are now broken.