8 years agoChanged msg_style and msg_delim to be file static to m_getfld.c
David Levine [Sat, 22 Dec 2012 16:14:36 +0000 (10:14 -0600)]
Changed msg_style and msg_delim to be file static to m_getfld.c
instead of global.

8 years agoChanged type of name argument to m_getfld() from unsigned char *
David Levine [Sat, 22 Dec 2012 16:05:51 +0000 (10:05 -0600)]
Changed type of name argument to m_getfld() from unsigned char *
to unsigned char[NAMESZ].

8 years agoAdded m_getfld () interface description.
David Levine [Sat, 22 Dec 2012 15:51:25 +0000 (09:51 -0600)]
Added m_getfld () interface description.

8 years agoRemoved a few #ifndef JLR/#endif pairs because they're not needed.
David Levine [Wed, 12 Dec 2012 05:24:19 +0000 (23:24 -0600)]
Removed a few #ifndef JLR/#endif pairs because they're not needed.

8 years agoRemoved some dead code, all inside #if 0's. I tried to not remove
David Levine [Wed, 12 Dec 2012 01:45:29 +0000 (19:45 -0600)]
Removed some dead code, all inside #if 0's.  I tried to not remove
anything useful, so there are a few #if 0's remaining.

8 years agoImport a copy of Markus Schnalke's master's thesis: The Modern Mail Handler.
Lyndon Nerenberg [Tue, 11 Dec 2012 04:54:15 +0000 (20:54 -0800)]
Import a copy of Markus Schnalke's master's thesis: The Modern Mail Handler.

(Added with Markus' permission.)

8 years agoRemove the peeking into the stdio internals inside of scan(). Hm, this
Ken Hornstein [Tue, 11 Dec 2012 04:23:44 +0000 (23:23 -0500)]
Remove the peeking into the stdio internals inside of scan().  Hm, this
was more complicated than I originally thought.

8 years agoAdded release notes for releases 1.4 and 1.3 to tail of NEWS.
David Levine [Mon, 10 Dec 2012 03:26:49 +0000 (21:26 -0600)]
Added release notes for releases 1.4 and 1.3 to tail of NEWS.

8 years agomhshow: properly treat unknown multipart subtypes as "mixed"
Paul Fox [Fri, 7 Dec 2012 15:27:52 +0000 (10:27 -0500)]
mhshow:  properly treat unknown multipart subtypes as "mixed"

8 years agoAdded test of -nosequence to test-pick.
David Levine [Thu, 6 Dec 2012 15:46:18 +0000 (09:46 -0600)]
Added test of -nosequence to test-pick.

8 years agopick: add -nosequence command line switch
Paul Fox [Thu, 6 Dec 2012 02:47:12 +0000 (21:47 -0500)]
pick: add -nosequence command line switch

8 years agoNote in dist, mh-profile, and repl man pages that the @ link
David Levine [Tue, 4 Dec 2012 00:45:55 +0000 (18:45 -0600)]
Note in dist, mh-profile, and repl man pages that the @ link
is only created with -atfile.

8 years agoFix to 25581a94c5113eb78b2baf7110408df96efc4418: always set $editalt,
David Levine [Mon, 3 Dec 2012 14:54:21 +0000 (08:54 -0600)]
Fix to 25581a94c5113eb78b2baf7110408df96efc4418: always set $editalt,
even without -atfile.

8 years agoAdded docs/contrib/vpick.
Jerrad Pierce [Mon, 3 Dec 2012 03:02:11 +0000 (21:02 -0600)]
Added docs/contrib/vpick.

8 years agoCleaned up sendfiles(1) man page just a bit.
David Levine [Sun, 2 Dec 2012 15:19:21 +0000 (09:19 -0600)]
Cleaned up sendfiles(1) man page just a bit.

8 years agoCorrected the last addition to man/ Might be nicer to explain
Ralph Corderoy [Sun, 2 Dec 2012 15:05:37 +0000 (09:05 -0600)]
Corrected the last addition to man/  Might be nicer to explain
the warty truth from the off.

8 years agoUpdated the TODO file.
David Levine [Sat, 1 Dec 2012 16:53:36 +0000 (10:53 -0600)]
Updated the TODO file.

8 years agoCopied atexit() code from fakesmtp.c to fakepop.c so that its
David Levine [Sat, 1 Dec 2012 16:52:27 +0000 (10:52 -0600)]
Copied atexit() code from fakesmtp.c to fakepop.c so that its
pid file gets cleaned up.  Also copied the sig handler.

8 years agoFixed formatting glitch in
David Levine [Sat, 1 Dec 2012 00:42:40 +0000 (18:42 -0600)]
Fixed formatting glitch in

8 years agoAdded description of @folder format to
Jerrad Pierce [Sat, 1 Dec 2012 00:40:52 +0000 (18:40 -0600)]
Added description of @folder format to

8 years agoMerge branch 'master' of
Ken Hornstein [Thu, 29 Nov 2012 20:28:12 +0000 (15:28 -0500)]
Merge branch 'master' of

8 years agoshow: remove unused variable
Paul Fox [Thu, 29 Nov 2012 19:54:49 +0000 (14:54 -0500)]
show: remove unused variable

this should have been part of the previous removal of unreachable code.

8 years agoshow: remove unreachable code
Paul Fox [Thu, 29 Nov 2012 18:59:55 +0000 (13:59 -0500)]
show:  remove unreachable code

the stanza in question has been impossible to reach for some time.  i
believe its purpose was to give a non-mh display proc full pathname
arguments to work with.  since we've chdir'd to the folder, giving it
message numbers (i.e., relative pathnames) is fine.

8 years agoshow: remove MAXARGS limit when running any of the helper procs
Paul Fox [Tue, 27 Nov 2012 05:20:55 +0000 (00:20 -0500)]
show: remove MAXARGS limit when running any of the helper procs

use app_msgarg() to maintain both the msgs[] and vec[] string vectors.

8 years agoforw: remove MAXARGS limit when running mhlproc
Paul Fox [Tue, 27 Nov 2012 04:43:00 +0000 (23:43 -0500)]
forw: remove MAXARGS limit when running mhlproc

use app_msgarg() to maintain both the msgs[] and vec[] string vectors.

8 years agoburst: eliminate use of MAXARGS
Paul Fox [Tue, 27 Nov 2012 14:53:56 +0000 (09:53 -0500)]
burst: eliminate use of MAXARGS

use the already available app_msgarg() utility to make this easy.
(the MAXARGS limit was highly unlikely to be exceeded, in practice.)

8 years agoUpdate about changes to rmmproc support.
Ken Hornstein [Wed, 28 Nov 2012 16:21:50 +0000 (11:21 -0500)]
Update about changes to rmmproc support.

8 years agoapp_msgarg: de-obfuscate
Paul Fox [Tue, 27 Nov 2012 17:05:56 +0000 (12:05 -0500)]
app_msgarg: de-obfuscate

add some whitespace and break things up.  and add comment to reflect
that this might be (and is) used for more than just msg parameters.

8 years agoArtificial argv limits.
Paul Fox [Tue, 27 Nov 2012 02:00:28 +0000 (21:00 -0500)]
Artificial argv limits.

when i skimmed the code earlier, i was looking at all the uses of
MAXARGS -- many of which are used to size local arrays.  converting
them all to be dynamically-sized might be a fair amount of work.

but looking at rmm.c, refile.c, and folder_delmsgs(), i don't think
that issue applies.  the patch below fixes the problem, and makes
rmmproc and refile do the right thing (well, at least, the modern
thing).  NB: i didn't test to the limit where execvp should return

as for the rest of mh -- it's certainly possible to hit the MAXARGS
limit with other commands (show, for instance), but i suspect the
frequency is much lower, and those, too, can be fixed as needed.


>From 9636bc0e1697829966f51d2c301cd5d730c38c0a Mon Sep 17 00:00:00 2001
From: Paul Fox <>
Date: Mon, 26 Nov 2012 20:49:55 -0500
Subject: [PATCH] rmm/refile: remove the MAXARGS limit when running rmmproc

8 years agoSince pick now uses decode_rfc2047, we need to be sure to link in the
Ken Hornstein [Mon, 26 Nov 2012 16:25:31 +0000 (11:25 -0500)]
Since pick now uses decode_rfc2047, we need to be sure to link in the
iconv library (if we need it).

8 years agoIn pick(1), attempt to decode each header field as if it were
David Levine [Sun, 25 Nov 2012 15:17:15 +0000 (09:17 -0600)]
In pick(1), attempt to decode each header field as if it were
MIME encoded.

8 years agoIn pick(1), attempt to decode each header field as if it were
David Levine [Sun, 25 Nov 2012 15:06:20 +0000 (09:06 -0600)]
In pick(1), attempt to decode each header field as if it were
MIME encoded.

8 years agoA new test for the POP support in inc. Very simple for now, but it seems
Ken Hornstein [Sun, 25 Nov 2012 05:49:04 +0000 (00:49 -0500)]
A new test for the POP support in inc.  Very simple for now, but it seems
to at least check the basic functionality.

8 years agoAdd support for a -nosasl switch.
Ken Hornstein [Sun, 25 Nov 2012 04:50:31 +0000 (23:50 -0500)]
Add support for a -nosasl switch.

8 years agoFixed pick(1) to properly unfold multiple-line header fields
David Levine [Sat, 24 Nov 2012 15:08:31 +0000 (09:08 -0600)]
Fixed pick(1) to properly unfold multiple-line header fields
by removing newlines instead of replacing them with spaces
[Bug #15215].

8 years agoThe big news for this update is nmh 1.5.
Bill Wohler [Sat, 24 Nov 2012 06:41:06 +0000 (01:41 -0500)]
The big news for this update is nmh 1.5.

8 years agoFix the race condition with fakesmtp so it works without needing retries.
Ken Hornstein [Sat, 24 Nov 2012 01:54:28 +0000 (20:54 -0500)]
Fix the race condition with fakesmtp so it works without needing retries.

8 years agoDocument changes to inc.
Ken Hornstein [Sat, 24 Nov 2012 00:59:37 +0000 (19:59 -0500)]
Document changes to inc.

8 years agoDocument the -port switch to inc. Also, fix the -port switch to inc so
Ken Hornstein [Sat, 24 Nov 2012 00:58:34 +0000 (19:58 -0500)]
Document the -port switch to inc.  Also, fix the -port switch to inc so
it actually works.

8 years agoAdded test-slocal.
David Levine [Fri, 23 Nov 2012 15:27:44 +0000 (09:27 -0600)]
Added test-slocal.

8 years agoslocal used to support two different formats for three of
David Levine [Fri, 23 Nov 2012 15:26:21 +0000 (09:26 -0600)]
slocal used to support two different formats for three of
its arguments:

  [address info sender]
  [-addr address] [-info data] [-sender sender]

But it hasn't properly supported the first form since at
least April 1999.  So, I removed that first form from the
man page and the broken support from the code.  Score
another for the test suite!

8 years agoAdded Message-Id to messages in test suite.
David Levine [Fri, 23 Nov 2012 15:25:15 +0000 (09:25 -0600)]
Added Message-Id to messages in test suite.

8 years agoFixed a couple of signed-unsigned comparisons.
David Levine [Tue, 20 Nov 2012 01:19:59 +0000 (19:19 -0600)]
Fixed a couple of signed-unsigned comparisons.

8 years agoYozo TODA: fix for mhshow-charset- directives in .mh_profile being broken
Oliver Kiddle [Mon, 19 Nov 2012 23:47:24 +0000 (00:47 +0100)]
Yozo TODA: fix for mhshow-charset- directives in .mh_profile being broken

8 years agoMerge branch 'format-memory-rework'
Ken Hornstein [Mon, 19 Nov 2012 20:31:21 +0000 (15:31 -0500)]
Merge branch 'format-memory-rework'

8 years agoMake sure we strip off a newline from components we want to display (we
Ken Hornstein [Mon, 19 Nov 2012 20:29:01 +0000 (15:29 -0500)]
Make sure we strip off a newline from components we want to display (we
were stripping off a newline from the wrong copy of the component).

8 years agoConvert repl to the new world format API.
Ken Hornstein [Mon, 19 Nov 2012 19:37:14 +0000 (14:37 -0500)]
Convert repl to the new world format API.

8 years agoSupport for the new world format API for comp and forw.
Ken Hornstein [Mon, 19 Nov 2012 19:19:30 +0000 (14:19 -0500)]
Support for the new world format API for comp and forw.

8 years agoWhoops, with the new world order we need to make sure we allocate memory
Ken Hornstein [Mon, 19 Nov 2012 19:18:55 +0000 (14:18 -0500)]
Whoops, with the new world order we need to make sure we allocate memory
for all strings in format instructions.

8 years agoConvert scan() to the new world format API.
Ken Hornstein [Mon, 19 Nov 2012 18:48:16 +0000 (13:48 -0500)]
Convert scan() to the new world format API.

8 years agoChange fmt_findcasecmp() to fmt_findcasecomp(). The new name is more
Ken Hornstein [Mon, 19 Nov 2012 18:47:46 +0000 (13:47 -0500)]
Change fmt_findcasecmp() to fmt_findcasecomp().  The new name is more

8 years agoChange API a bit.
Ken Hornstein [Mon, 19 Nov 2012 17:23:16 +0000 (12:23 -0500)]
Change API a bit.

Rename fmt_addcomp() to fmt_addcomptext().
Create new function fmt_addcompentry().

8 years agoRemove unused variable.
Ken Hornstein [Mon, 19 Nov 2012 17:22:26 +0000 (12:22 -0500)]
Remove unused variable.

8 years agoRemoved leading space from lines in mhbuild and rmm man pages
David Levine [Sat, 17 Nov 2012 18:05:22 +0000 (12:05 -0600)]
Removed leading space from lines in mhbuild and rmm man pages
to correct formatting.

8 years agoFinished work on rcvdist to convert to new world format API.
Ken Hornstein [Sat, 17 Nov 2012 04:56:26 +0000 (23:56 -0500)]
Finished work on rcvdist to convert to new world format API.

8 years agoMore (and hopefully for now) the final cleanup for mhl.
Ken Hornstein [Sat, 17 Nov 2012 04:41:10 +0000 (23:41 -0500)]
More (and hopefully for now) the final cleanup for mhl.

8 years agoBasic support for the new world API; seems to work!
Ken Hornstein [Sat, 17 Nov 2012 04:22:23 +0000 (23:22 -0500)]
Basic support for the new world API; seems to work!

8 years agoAdd missing functions for manipulating component text.
Ken Hornstein [Sat, 17 Nov 2012 04:21:54 +0000 (23:21 -0500)]
Add missing functions for manipulating component text.

8 years agoFix up documentation a bit.
Ken Hornstein [Sat, 17 Nov 2012 04:20:28 +0000 (23:20 -0500)]
Fix up documentation a bit.

8 years agoPartial work for mhl; still more stuff to do.
Ken Hornstein [Fri, 16 Nov 2012 02:47:59 +0000 (21:47 -0500)]
Partial work for mhl; still more stuff to do.

8 years agoFix missing argument to fmt_free().
Ken Hornstein [Fri, 16 Nov 2012 02:47:36 +0000 (21:47 -0500)]
Fix missing argument to fmt_free().

8 years agoBeginnings of conversion of code to new format interface.
Ken Hornstein [Thu, 15 Nov 2012 20:53:24 +0000 (15:53 -0500)]
Beginnings of conversion of code to new format interface.

8 years agoUpdate documentation to match code change.
Ken Hornstein [Thu, 15 Nov 2012 20:50:46 +0000 (15:50 -0500)]
Update documentation to match code change.

8 years agoFix a few bugs:
Ken Hornstein [Thu, 15 Nov 2012 19:21:20 +0000 (14:21 -0500)]
Fix a few bugs:

Make sure to add a ref when adding to the hash table.
Forgot the increment the format array inside of fmt_free().
Marked an allocated string when doing FT_LIT.

8 years agoAdd some comments to explain how format loop support was supposed to work.
Ken Hornstein [Thu, 15 Nov 2012 18:30:30 +0000 (13:30 -0500)]
Add some comments to explain how format loop support was supposed to work.

8 years agoAdd refcounting to struct comp.
Ken Hornstein [Thu, 15 Nov 2012 16:05:55 +0000 (11:05 -0500)]
Add refcounting to struct comp.
Move CHASH and FINDCOMP into fmt_compile.c to make private.

8 years agoBeginnings of the changes to fmt_compile for memory rework.
Ken Hornstein [Thu, 15 Nov 2012 14:19:36 +0000 (09:19 -0500)]
Beginnings of the changes to fmt_compile for memory rework.

8 years agoUpdate with new functions and comments describing them.
Ken Hornstein [Thu, 15 Nov 2012 14:18:11 +0000 (09:18 -0500)]
Update with new functions and comments describing them.

8 years agoRemoved support for zip from sendfiles. I added it as part of the
David Levine [Wed, 14 Nov 2012 14:47:14 +0000 (08:47 -0600)]
Removed support for zip from sendfiles.  I added it as part of the
sendfiles rewrite, f8baa5a34335fc0fc8ccabfabc601d0af73ab769, a few
weeks ago.  But because sendfiles fed zip from standard input, zip
would use Zip64 extensions.  That would require unzip 6.0 or later
to extract, according to the zip man page.  But current MacOS X
uses unzip 5.52, so it broke there.

8 years ago1) Don't bother checking stderr output from sendfiles because tar's
David Levine [Wed, 14 Nov 2012 04:35:57 +0000 (22:35 -0600)]
1) Don't bother checking stderr output from sendfiles because tar's
   output format isn't standardized.
2) Added -c to uncompress.

8 years agoUpdated scan.highlighted to feed an expression to %(zputlit).
David Levine [Wed, 14 Nov 2012 04:32:22 +0000 (22:32 -0600)]
Updated scan.highlighted to feed an expression to %(zputlit).

8 years agoMake sure we stick to POSIX-sed only. I _think_ this portable enough to
Ken Hornstein [Wed, 14 Nov 2012 03:23:02 +0000 (22:23 -0500)]
Make sure we stick to POSIX-sed only.  I _think_ this portable enough to
work everywhere.

8 years agoChange %(putlit) and %(zputlit) to take TF_EXPR instead of TF_STR. This
Ken Hornstein [Tue, 13 Nov 2012 23:53:55 +0000 (18:53 -0500)]
Change %(putlit) and %(zputlit) to take TF_EXPR instead of TF_STR.  This
was originally my fault; TF_STR means a string literal as an argument, but
the documentation (and the code) really means for it to take an expression.

8 years agoUpdated test-scan to correspond to commit
David Levine [Fri, 9 Nov 2012 21:02:53 +0000 (15:02 -0600)]
Updated test-scan to correspond to commit

8 years agoAdded ml script to docs/contrib.
Paul Fox [Fri, 9 Nov 2012 20:53:21 +0000 (14:53 -0600)]
Added ml script to docs/contrib.

8 years agoRefer to just "root" in slocal man page.
David Levine [Fri, 9 Nov 2012 20:39:59 +0000 (14:39 -0600)]
Refer to just "root" in slocal man page.

8 years agoAdded ml script to docs/contrib.
Paul Fox [Fri, 9 Nov 2012 20:37:59 +0000 (14:37 -0600)]
Added ml script to docs/contrib.

8 years agoIn scan.highlighted, set black background on the colorized lines
David Levine [Wed, 7 Nov 2012 22:48:05 +0000 (16:48 -0600)]
In scan.highlighted, set black background on the colorized lines
to enhance visibility if the user has a light background.

8 years agoRemoved note from BUGS section of several man pages saying
David Levine [Wed, 7 Nov 2012 00:43:42 +0000 (18:43 -0600)]
Removed note from BUGS section of several man pages saying
that command line arguments must be quoted for protection from
the shell.  That's not a bug, and has nothing to do with nmh.

Changed "back-quoted" to "backquoted" for consistency in a few
man pages.

8 years agoFixed typo in
David Levine [Wed, 7 Nov 2012 00:42:45 +0000 (18:42 -0600)]
Fixed typo in

8 years agoFixed typo in mh-format man page description of zputlit.
David Levine [Mon, 5 Nov 2012 19:10:16 +0000 (13:10 -0600)]
Fixed typo in mh-format man page description of zputlit.

8 years agoAdded application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
David Levine [Mon, 5 Nov 2012 17:25:33 +0000 (11:25 -0600)]
Added application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
for .xlsx files.

8 years agoAdded format support for zputlit function escape. It requires
David Levine [Mon, 5 Nov 2012 02:58:47 +0000 (20:58 -0600)]
Added format support for zputlit function escape.  It requires
that the str contents have zero display width, such as for
terminal escape sequences.

8 years agonmh.7 isn't the place to advise people how to change their $PATH.
Lyndon Nerenberg [Sun, 4 Nov 2012 02:22:49 +0000 (19:22 -0700)]
nmh.7 isn't the place to advise people how to change their $PATH.

8 years agoFixed comparison to be signed instead of unsigned.
David Levine [Sat, 3 Nov 2012 13:13:34 +0000 (08:13 -0500)]
Fixed comparison to be signed instead of unsigned.

8 years agoAdded description of "all" range abbreviation.
David Levine [Sat, 3 Nov 2012 12:37:40 +0000 (07:37 -0500)]
Added description of "all" range abbreviation.

8 years agoAdded argument to fmt_scan() to specify the buffer size.
David Levine [Sat, 3 Nov 2012 03:45:07 +0000 (22:45 -0500)]
Added argument to fmt_scan() to specify the buffer size.

8 years agoUpdated date on sortm(1) man page.
David Levine [Mon, 29 Oct 2012 03:35:45 +0000 (22:35 -0500)]
Updated date on sortm(1) man page.

8 years agoUpdated build-nmh-cygwin for release of Cygwin nmh 1.5-2. To use:
David Levine [Sun, 28 Oct 2012 18:21:46 +0000 (13:21 -0500)]
Updated build-nmh-cygwin for release of Cygwin nmh 1.5-2.  To use:
1) Change VERSION to 1.5-2.
2) make dist
3) Symlink build-nmh-cygwin to nmh-1.5-2 and run that with "all".

8 years agoFixed typo reported by Ralph.
David Levine [Sat, 27 Oct 2012 17:36:29 +0000 (12:36 -0500)]
Fixed typo reported by Ralph.

I also should have mentioned in the commit message for
sortm(1) -check/-nocheck that Norm proposed their addition.

8 years agoIn and test-mhmail, wait for fakesmtp to start
David Levine [Sat, 27 Oct 2012 17:18:45 +0000 (12:18 -0500)]
In and test-mhmail, wait for fakesmtp to start
for up to 40 seconds.  10 seconds wasn't long enough when I leaned
on my machine.  Also, print out a message if exiting due to that

8 years agoAdded -check/-nocheck switches to sortm(1). Also removed obsolete
David Levine [Sat, 27 Oct 2012 17:14:01 +0000 (12:14 -0500)]
Added -check/-nocheck switches to sortm(1).  Also removed obsolete
note in the BUGS portion of its man page about how it sorts messages
that are missing or have an invalid Date: field.  It actually sorts
them using their file modification times.

8 years agoFixed typo in Cygwin section of MACHINES.
David Levine [Wed, 24 Oct 2012 00:18:20 +0000 (19:18 -0500)]
Fixed typo in Cygwin section of MACHINES.

8 years agoCyrus SASL 2.1.25 introduced the sasl_callback_ft prototype,
David Levine [Wed, 24 Oct 2012 00:16:56 +0000 (19:16 -0500)]
Cyrus SASL 2.1.25 introduced the sasl_callback_ft prototype,
which has an explicit void parameter list, according to best
practice.  So we need to cast to avoid compile warnings.
And provide a sasl_callback_ft prototype for earlier versions.

8 years agoClarify that manpage references use the .IR macro everywhere.
Lyndon Nerenberg [Sun, 21 Oct 2012 19:39:43 +0000 (12:39 -0700)]
Clarify that manpage references use the .IR macro everywhere.

8 years agoFix one last missed %nmhdate% substitution.
Lyndon Nerenberg [Sun, 21 Oct 2012 19:38:40 +0000 (12:38 -0700)]
Fix one last missed %nmhdate% substitution.

Remove empty CONTEXT section.

8 years agoRemove %nmhdate% substitution from man.sed. It's no longer used.
Lyndon Nerenberg [Sun, 21 Oct 2012 19:37:49 +0000 (12:37 -0700)]
Remove %nmhdate% substitution from man.sed.  It's no longer used.

8 years agoMerge branch 'master' of ssh://
Lyndon Nerenberg [Sun, 21 Oct 2012 19:33:21 +0000 (12:33 -0700)]
Merge branch 'master' of ssh://

8 years agoCorrected date in
David Levine [Sun, 21 Oct 2012 17:02:40 +0000 (12:02 -0500)]
Corrected date in

8 years agoUpdated sendfiles(1):
David Levine [Sun, 21 Oct 2012 14:52:46 +0000 (09:52 -0500)]
Updated sendfiles(1):
1) Added -from switch.
2) sendfiles will now construct a From address, using the sender's
   localmbox, if the user does not specify it with -from or the PERSON
   environment variable.
3) Added support for bzip2, lzma, and zip compression methods.  Added
   a new switch to select the method:  -compress <method>.  Because
   support for the old -compress with was broken (it did not use
   -c with compress/uncompress) and it was undocumented, it has
   been replaced.  Retained old -gzip and -none switches for backward
   compatibility even though they were undocumented.
4) Allow the recipient argument to be preceded by the optional -to
   switch iff the subject argument is preceded by the optional
   -subject switch.  Allow the delay value to be specified using the
   optional -delay switch.
5) Added -version and -help switches.
6) All switches can now be abbreviated.

/etc/sendfiles no longer needs to be configured.  It's easier to
support make distcheck by having it figure out its path at runtime.

In viamail, set postproc to post in the same directory as itself, if
invoked with a full path.  This allows it to support make distcheck.
viamail does not read the profile so its postproc is otherwise
hard-coded at compile time.

Added test-sendfiles.