One fundamental question: How does MHonArc know what the MIME type
is for the message?
By the Content-Type field in the message header.
Right now, the form that's used to create the
email message does not output a MIME Content-Type -- does MHonArc
default to text/plain, or is their some other method of sensing the
In the absence of a Content-Type field in the message header,
mhonarc assumes a content-type of text/plain (and therefore,
calls the text/plain filter).
As I understand it, my message headers should have two
additional lines, one specifying the MIME version, and one specifying
the Content-Type. Is this correct?
Yes, but only if you are creating non-text/plain messages. RFC 1521
states that text/plain is the default content-type if no content-type
field is present (and as mentioned above, this is what mhonarc does).
BTW, the MIME version is currently ignored by mhonarc. However, if you
do plan to use MIME, it should be defined to stay in sync with other
MIME user agents.
If you plan on hooking in a new text/plain filter, make sure to read
the "MIME" section of the documentation. There are some subsections
that describe how new MIME filters can be hooked into mhonarc, and how
the filters are invoked.
A good example of how an existing stand-alone filter was modified to
work with mhonarc is the text/setext filter: mhtxtsetext.pl.
Unfortunately, I did not highlight the changes done, but you can grab
the original source of the filter at
<URL:http://www.bsdi.com/server/util/setext.pl> to do a comparison.