Tarot Jean-Sébastien | 19 Jan 2012 11:19
Picon

About disposition-notification-to in header mail

I use nail with a shell script it work's very well. But i need a special 
header field named "Disposition-Notification-To" the argument are a 
simple mail address.

I made a patch for this it's works well. it is possible to add this to 
reprosite after your analyse of course:

I modifiy 3 files:

def.h:
*** ../nail/def.h       2006-03-04 01:32:16.000000000 +0100
--- def.h       2012-01-19 10:25:58.817596606 +0100
***************
*** 424,429 ****
--- 424,430 ----
         char    *h_charset;             /* preferred charset */
         struct name *h_from;            /* overridden "From:" field */
         struct name *h_replyto;         /* overridden "Reply-To:" field */
+       struct name *h_returnreceipt;   /* for acknowledgement or return 
Receipt "Disposition-Notification-To:" field*/
         struct name *h_sender;          /* overridden "Sender:" field */
         char *h_organization;           /* overridden "Organization:" 
field */
   };

head.c:
*** ../nail/head.c      2006-03-04 01:32:16.000000000 +0100
--- head.c      2012-01-19 10:32:18.547540580 +0100
***************
*** 326,331 ****
(Continue reading)

neitzel | 19 Jan 2012 22:33
Picon

Re: About disposition-notification-to in header mail

> I made a patch for this it's works well. it is possible to add this to 
> reprosite after your analyse of course:

Thanks for the patch.  I researched the relevant RFCs defining this header
field and would agree that providing a Disposition-Notification-To: header
in sync with Return-Receipt-To: is the correct thing to do.

A few remarks, though:

(1) My own nail installations have a one-line patch to do alias
exapnsions on "Reply-To:" addresses, and if I were ever using
receipts/DSNs, I'd do the same for those return adresses.  (We agree
that the standard only mandates this for recipient addresses, and
we agree to disagree whether or not this should extend beyond
To:/Cc:/Bcc: addresses.)  At any rate, a simple call to usermap()
on the address would do the job.

(2) Please keep your line length reasonably short, <78 if possible.  FYI:

    nail 9 > awk '{nasty += length>79} END {print nasty, NR, nasty/NR}' *.[hc]
    35 36723 0.000953081

(3) I guess you were using your mouse to incorporate the diff into the
email?  Don't do that, it wrecks the tabs in the code.  Only spaces arrived
here.  This diff won't apply.

(4) Mentioning "RFC 2298 (first, obsolete), 3798" in some comment on the new
header field would be helpful.

(5) Lastly,
(Continue reading)


Gmane