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