procmail
[Top] [All Lists]

Re: Return an attachement...

1998-11-11 19:38:20
On Thu, 12 Nov 1998, Liviu Daia wrote:

echo "This is a multi-part message in MIME format.";\

    Nah, that's a Pine-ism

Actually, it's something recommended by several revisions of the MIME
standards.  The stuff before the first boundary string is a "preamble"

    Actually, this practice seems to be discouraged by RFC 2046:

Yeah, that's why I said "several."  (I didn't have 2046 handy, and didn't
recall for certain if it was now deprecated.  The point is, it's not a
"Pine-ism.")

echo "Content-Type: application/msword";\
echo " name=\"foo.doc\"";\

    Don't write the name twice, forget about "name=..." and just use
"Content-Disposition:".

He really is better off doing both -- some mailers that don't
know about the content-disposition header will recognize the name
parameter.

    No.  The "name=..." parameter to "Content-Type:" is non-standard,
despite the fact that programs like Pine are still happily using it.

Yes, I know it's non-standard.  But it appeared in a previous draft of the
MIME specs, to which many UAs were written, and is therefore still fairly
widely used/recognized.  UAs written to that version of the spec probably
don't interpret content-disposition, so using filename= there only won't
always have the desired effect.

(if you're still using such a mailer these days you're likely to have
more serious problems anyway :-)).

Not really.

OTOH, preaching the use of obsolete
forms for the sake of backward compatibility can be pretty harmful.

This is not a matter of "backwards compatibily."  We're not talking about
UA implementation here.  It's a matter of the sender producing the desired
effect for as many recipients as possible; maximal interoperability.  
Newer MIME interpreters will simply ignore the name= parameter, so no harm
is done.

Preaching that new UAs ought to expect and interpret the name= parameter,
or suggesting using c-type name= *in place of* c-disp filename=, would be
harmful, I agree.

Shouldn't that be "mmencode -b"?

    My understanding is "Base64" is the default encoding.

Ah.  Been a long time since I looked at "mmencode".