[Docs] [txt|pdf|xml|html] [Tracker] [WG] [Email] [Diff1] [Diff2] [Nits]

Versions: (RFC 3798) 00 01 02 draft-ietf-appsawg-mdn-3798bis

Network Working Group                                     T. Hansen, Ed.
Internet-Draft                                         AT&T Laboratories
Obsoletes: 3798 (if approved)                           A. Melnikov, Ed.
Intended status: Standards Track                               Isode Ltd
Expires: January 4, 2015                                    July 3, 2014


                    Message Disposition Notification
                    draft-hansen-mdn-3798bis-02.txt

Abstract

   This memo defines a MIME content-type that may be used by a mail user
   agent (MUA) or electronic mail gateway to report the disposition of a
   message after it has been successfully delivered to a recipient.
   This content-type is intended to be machine-processable.  Additional
   message header fields are also defined to permit Message Disposition
   Notifications (MDNs) to be requested by the sender of a message.  The
   purpose is to extend Internet Mail to support functionality often
   found in other messaging systems, such as X.400 and the proprietary
   "LAN-based" systems, and often referred to as "read receipts,"
   "acknowledgements", or "receipt notifications."  The intention is to
   do this while respecting privacy concerns, which have often been
   expressed when such functions have been discussed in the past.

   Because many messages are sent between the Internet and other
   messaging systems (such as X.400 or the proprietary "LAN-based"
   systems), the MDN protocol is designed to be useful in a multi-
   protocol messaging environment.  To this end, the protocol described
   in this memo provides for the carriage of "foreign" addresses, in
   addition to those normally used in Internet Mail.  Additional
   attributes may also be defined to support "tunneling" of foreign
   notifications through Internet Mail.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."



Hansen & Melnikov        Expires January 4, 2015                [Page 1]


Internet-Draft                     MDN                         July 2014


   This Internet-Draft will expire on January 4, 2015.

Copyright Notice

   Copyright (c) 2014 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

   This document may contain material from IETF Documents or IETF
   Contributions published or made publicly available before November
   10, 2008.  The person(s) controlling the copyright in some of this
   material may not have granted the IETF Trust the right to allow
   modifications of such material outside the IETF Standards Process.
   Without obtaining an adequate license from the person(s) controlling
   the copyright in such materials, this document may not be modified
   outside the IETF Standards Process, and derivative works of it may
   not be created outside the IETF Standards Process, except to format
   it for publication as an RFC or to translate it into languages other
   than English.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
     1.1.  Purposes  . . . . . . . . . . . . . . . . . . . . . . . .   3
     1.2.  Requirements  . . . . . . . . . . . . . . . . . . . . . .   4
     1.3.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   5
   2.  Requesting Message Disposition Notifications  . . . . . . . .   5
     2.1.  The Disposition-Notification-To Header  . . . . . . . . .   5
     2.2.  The Disposition-Notification-Options Header . . . . . . .   7
     2.3.  The Original-Recipient Header . . . . . . . . . . . . . .   8
     2.4.  Use with the Message/Partial Content Type . . . . . . . .   9
   3.  Format of a Message Disposition Notification  . . . . . . . .   9
     3.1.  The message/disposition-notification content-type . . . .  11
     3.2.  Message/disposition-notification Fields . . . . . . . . .  13
     3.3.  Extension-fields  . . . . . . . . . . . . . . . . . . . .  18
   4.  Timeline of events  . . . . . . . . . . . . . . . . . . . . .  19
   5.  Conformance and Usage Requirements  . . . . . . . . . . . . .  20
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .  21
     6.1.  Forgery . . . . . . . . . . . . . . . . . . . . . . . . .  21



Hansen & Melnikov        Expires January 4, 2015                [Page 2]


Internet-Draft                     MDN                         July 2014


     6.2.  Privacy . . . . . . . . . . . . . . . . . . . . . . . . .  21
     6.3.  Non-Repudiation . . . . . . . . . . . . . . . . . . . . .  22
     6.4.  Mail Bombing  . . . . . . . . . . . . . . . . . . . . . .  22
   7.  Collected Grammar . . . . . . . . . . . . . . . . . . . . . .  22
   8.  Guidelines for Gatewaying MDNs  . . . . . . . . . . . . . . .  24
     8.1.  Gatewaying from other mail systems to MDNs  . . . . . . .  24
     8.2.  Gatewaying from MDNs to other mail systems  . . . . . . .  25
     8.3.  Gatewaying of MDN-requests to other mail systems  . . . .  25
   9.  Example . . . . . . . . . . . . . . . . . . . . . . . . . . .  26
   10. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  27
     10.1.  Disposition-Notification-Options header field
            disposition-notification-parameter names . . . . . . . .  27
     10.2.  Disposition modifier names . . . . . . . . . . . . . . .  28
     10.3.  MDN extension field names  . . . . . . . . . . . . . . .  28
   11. Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  28
   12. References  . . . . . . . . . . . . . . . . . . . . . . . . .  29
     12.1.  Normative References . . . . . . . . . . . . . . . . . .  29
     12.2.  Informative References . . . . . . . . . . . . . . . . .  29
   Appendix A.  Changes from RFC 3798  . . . . . . . . . . . . . . .  29
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  32

1.  Introduction

   This memo defines a RFC-MIME-MEDIA [4] content-type for message
   disposition notifications (MDNs).  An MDN can be used to notify the
   sender of a message of any of several conditions that may occur after
   successful delivery, such as display of the message contents,
   printing of the message, deletion (without display) of the message,
   or the recipient's refusal to provide MDNs.  The "message/
   disposition-notification" content-type defined herein is intended for
   use within the framework of the "multipart/report" content type
   defined in RFC-REPORT [6].

   This memo defines the format of the notifications and the RFC-MSGFMT
   [2] header fields used to request them.

   This memo is an update to RFC 3798 and is intended to be published at
   Internet Standard Level.

   This memo is currently marked with the 'pre5378Trust200902' IPR
   statements until a release has been obtained from all previous
   authors and editors of this text.

1.1.  Purposes

   The MDNs defined in this memo are expected to serve several purposes:





Hansen & Melnikov        Expires January 4, 2015                [Page 3]


Internet-Draft                     MDN                         July 2014


   a.  Inform human beings of the disposition of messages after
       successful delivery, in a manner that is largely independent of
       human language;


   b.  Allow mail user agents to keep track of the disposition of
       messages sent, by associating returned MDNs with earlier message
       transmissions;


   c.  Convey disposition notification requests and disposition
       notifications between Internet Mail and "foreign" mail systems
       via a gateway;


   d.  Allow "foreign" notifications to be tunneled through a MIME-
       capable message system and back into the original messaging
       system that issued the original notification, or even to a third
       messaging system;


   e.  Allow language-independent, yet reasonably precise, indications
       of the disposition of a message to be delivered.

1.2.  Requirements

   These purposes place the following constraints on the notification
   protocol:


   a.  It must be readable by humans, and must be machine-parsable.


   b.  It must provide enough information to allow message senders (or
       their user agents) to unambiguously associate an MDN with the
       message that was sent and the original recipient address for
       which the MDN was issued (if such information is available), even
       if the message was forwarded to another recipient address.


   c.  It must also be able to describe the disposition of a message
       independent of any particular human language or of the
       terminology of any particular mail system.


   d.  The specification must be extensible in order to accommodate
       future requirements.




Hansen & Melnikov        Expires January 4, 2015                [Page 4]


Internet-Draft                     MDN                         July 2014


1.3.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC-KEYWORDS [9].

   All syntax descriptions use the ABNF specified by RFC-MSGFMT [2], in
   which the lexical tokens (used below) are defined: "atom", "CRLF",
   "FWS", "CFWS", "field-name", "mailbox", "msg-id", and "text".  The
   following lexical tokens are defined in the definition of the
   Content-Type header field in RFC-MIME-BODY [3]: "attribute" and
   "value".

2.  Requesting Message Disposition Notifications

   Message disposition notifications are requested by including a
   Disposition-Notification-To header field in the message.  Further
   information to be used by the recipient's MUA in generating the MDN
   may be provided by also including Original-Recipient and/or
   Disposition-Notification-Options header fields in the message.

2.1.  The Disposition-Notification-To Header

   A request for the receiving user agent to issue message disposition
   notifications is made by placing a Disposition-Notification-To header
   field into the message.  The syntax of the header field is

   mdn-request-header = "Disposition-Notification-To" ":" [FWS]
         mailbox *("," [FWS] mailbox)

   The presence of a Disposition-Notification-To header field in a
   message is merely a request for an MDN.  The recipients' user agents
   are always free to silently ignore such a request.

   An MDN MUST NOT itself have a Disposition-Notification-To header
   field.  An MDN MUST NOT be generated in response to an MDN.

   A user agent MUST NOT issue more than one MDN on behalf of each
   particular recipient.  That is, once an MDN has been issued on behalf
   of a recipient, no further MDNs may be issued on behalf of that
   recipient, even if another disposition is performed on the message.
   However, if a message is forwarded, an MDN may have been issued for
   the recipient doing the forwarding and the recipient of the forwarded
   message may also cause an MDN to be generated.

   While Internet standards normally do not specify the behavior of user
   interfaces, it is strongly recommended that the user agent obtain the
   user's consent before sending an MDN.  This consent could be obtained



Hansen & Melnikov        Expires January 4, 2015                [Page 5]


Internet-Draft                     MDN                         July 2014


   for each message through some sort of prompt or dialog box, or
   globally through the user's setting of a preference.

   MDNs SHOULD NOT be sent automatically if the address in the
   Disposition-Notification-To header field differs from the address in
   the Return-Path header field (see RFC-MSGFMT [2]).  In this case,
   confirmation from the user SHOULD be obtained, if possible.  If
   obtaining consent is not possible (e.g., because the user is not
   online at the time), then an MDN SHOULD NOT be sent.

   Confirmation from the user SHOULD be obtained (or no MDN sent) if
   there is no Return-Path header field in the message, or if there is
   more than one distinct address in the Disposition-Notification-To
   header field.

   The comparison of the addresses should be done using only the addr-
   spec (local-part "@" domain) portion, excluding any angle brackets,
   phrase and route.  The comparison MUST be case-sensitive for the
   local-part and case-insensitive for the domain part.  [[ more work
   needed here ]]

   [[CREF1: (From Bruce) the domains might differ, yet refer to the same
   place (equivalent MX mail exchangers, A vs. CNAME DNS records, DNS
   names vs. domain literals, etc.)  These are not addressed in 3798.
   ]]

   [[CREF2: (From Bruce) local-parts and domains might differ as literal
   text, but be equivalent when put in canonical form.  The issues are
   discussed in RFC 3696 -- but beware -- 3696 has a number of errors;
   refer to RFC 5322 for the actual quoting and escaping rules.  ]]

   [[CREF3: (From Bruce) internationalization issues might further
   compound comparison issues between local-parts and domains
   (specifying that the on-the-wire forms must be compared might
   suffice) ]]

   [[CREF4: (From Bruce) there exist some conventions (not standardized
   as far as I know) regarding subaddressing applied to local parts,
   e.g. as in tony+rfc3798@maillennium.att.com (that example also
   illustrates an issue regarding subdomains) ]]

   [[CREF5: (From Bruce) Of those, the angle bracket issue ought to be
   understood, but clarification could benefit implementors, especially
   as RFC 5322 defined the Return-Path syntax somewhat peculiarly.
   Canonicalization of local-parts and domains should probably be
   required prior to comparison, and use of on-the-wire forms should
   probably also be specified.  DNS equivalence issues might be tricky
   for some implementations (e.g. offline reading); perhaps the



Hansen & Melnikov        Expires January 4, 2015                [Page 6]


Internet-Draft                     MDN                         July 2014


   specification could use RFC 2119 "MAY" to give implementations leeway
   to consider A vs. CNAME and DNS vs domain literal equivalence for
   situations where DNS is available to the implementation (I'm not sure
   about MX).  About the only thing that can be said w.r.t.
   subaddressing and subdomains is a caution to sending MUA and address-
   rewriting MTA authors that a mismatch might result in no MDN being
   produced.  ]]

   If the message contains more than one Return-Path header field, the
   implementation may pick one to use for the comparison, or treat the
   situation as a failure of the comparison.

   The reason for not automatically sending an MDN if the comparison
   fails or more than one address is specified is to reduce the
   possibility of mail loops and of MDNs being used for mail bombing.

   A message that contains a Disposition-Notification-To header field
   SHOULD also contain a Message-ID header field as specified in RFC-
   MSGFMT [2].  This will permit automatic correlation of MDNs with
   their original messages by user agents.

   If the request for message disposition notifications for some
   recipients and not others is desired, two copies of the message
   should be sent, one with a Disposition-Notification-To header field
   and one without.  Many of the other header fields of the message
   (e.g., To, Cc) will be the same in both copies.  The recipients in
   the respective message envelopes determine for whom message
   disposition notifications are requested and for whom they are not.
   If desired, the Message-ID header field may be the same in both
   copies of the message.  Note that there are other situations (e.g.,
   Bcc) in which it is necessary to send multiple copies of a message
   with slightly different header fields.  The combination of such
   situations and the need to request MDNs for a subset of all
   recipients may result in more than two copies of a message being
   sent, some with a Disposition-Notification-To header field and some
   without.

   Messages posted to newsgroups SHOULD NOT have a Disposition-
   Notification-To header field.

2.2.  The Disposition-Notification-Options Header

   Future extensions to this specification may require that information
   be supplied to the recipient's MUA for additional control over how
   and what MDNs are generated.  The Disposition-Notification-Options
   header field provides an extensible mechanism for such information.
   The syntax of this header field is as follows:




Hansen & Melnikov        Expires January 4, 2015                [Page 7]


Internet-Draft                     MDN                         July 2014


   Disposition-Notification-Options =
             "Disposition-Notification-Options" ":" [FWS]
                            disposition-notification-parameter-list
   disposition-notification-parameter-list =
             disposition-notification-parameter
             *(";" [FWS] disposition-notification-parameter)
   disposition-notification-parameter = attribute [FWS] "="
             [FWS] importance "," [FWS] value *("," [FWS] value)
   importance = "required" / "optional"

   An importance of "required" indicates that interpretation of the
   disposition-notification-parameter is necessary for proper generation
   of an MDN in response to this request.  An importance of "optional"
   indicates that an MUA that does not understand the meaning of this
   disposition-notification-parameter MAY generate an MDN in response
   anyway, ignoring the value of the disposition-notification-parameter.

   No disposition-notification-parameter attribute names are defined in
   this specification.  Attribute names may be defined in the future by
   later revisions or extensions to this specification.  Disposition-
   notification-parameter attribute names beginning with "X-" will never
   be defined as standard names; such names are reserved for
   experimental use.  disposition-notification-parameter attribute names
   not beginning with "X-" MUST be registered with the Internet Assigned
   Numbers Authority (IANA) and described in a standards-track RFC or an
   experimental RFC approved by the IESG.  [[ more work needed here ]]
   (See Section 10 for a registration form.)

2.3.  The Original-Recipient Header

   Since electronic mail addresses may be rewritten while the message is
   in transit, it is useful for the original recipient address to be
   made available by the delivering MTA.  The delivering MTA may be able
   to obtain this information from the ORCPT parameter of the SMTP RCPT
   TO command, as defined in RFC-SMTP [1] and RFC-DSN-SMTP [7].

   RFC-DSN-SMTP [7] is amended as follows: If the ORCPT information is
   available, the delivering MTA SHOULD insert an Original-Recipient
   header field at the beginning of the message (along with the Return-
   Path header field).  The delivering MTA MAY delete any other
   Original-Recipient header fields that occur in the message.  The
   syntax of this header field is as follows:

   original-recipient-header =
             "Original-Recipient" ":" address-type ";" generic-address

   The address-type and generic-address token are as specified in the
   description of the Original-Recipient field in Section 3.2.3.



Hansen & Melnikov        Expires January 4, 2015                [Page 8]


Internet-Draft                     MDN                         July 2014


   The purpose of carrying the original recipient information and
   returning it in the MDN is to permit automatic correlation of MDNs
   with the original message on a per-recipient basis.

2.4.  Use with the Message/Partial Content Type

   The use of the header fields Disposition-Notification-To,
   Disposition-Notification-Options, and Original-Recipient with the
   MIME message/partial content type (RFC-MIME-MEDIA [4]]) requires
   further definition.

   When a message is segmented into two or more message/partial
   fragments, the three header fields mentioned in the above paragraph
   SHOULD be placed in the "inner" or "enclosed" message (using the
   terms of RFC-MIME-MEDIA [4]).  These header fields SHOULD NOT be used
   in the header fields of any of the fragments themselves.

   When the multiple message/partial fragments are reassembled, the
   following applies.  If these header fields occur along with the other
   header fields of a message/partial fragment message, they pertain to
   an MDN that will be generated for the fragment.  If these header
   fields occur in the header fields of the "inner" or "enclosed"
   message (using the terms of RFC-MIME-MEDIA [4]), they pertain to an
   MDN that will be generated for the reassembled message.
   Section 5.2.2.1 of RFC-MIME-MEDIA [4]) is amended to specify that, in
   addition to the header fields specified there, the three header
   fields described in this specification are to be appended, in order,
   to the header fields of the reassembled message.  Any occurrences of
   the three header fields defined here in the header fields of the
   initial enclosing message must not be copied to the reassembled
   message.

3.  Format of a Message Disposition Notification

   A message disposition notification is a MIME message with a top-level
   content-type of multipart/report (defined in RFC-REPORT [6]).  When
   multipart/report content is used to transmit an MDN:


   a.  The report-type parameter of the multipart/report content is
       "disposition-notification".


   b.  The first component of the multipart/report contains a human-
       readable explanation of the MDN, as described in RFC-REPORT [6].






Hansen & Melnikov        Expires January 4, 2015                [Page 9]


Internet-Draft                     MDN                         July 2014


   c.  The second component of the multipart/report is of content-type
       message/disposition-notification, described in Section 3.1 of
       this document.


   d.  If the original message or a portion of the message is to be
       returned to the sender, it appears as the third component of the
       multipart/report.  The decision of whether or not to return the
       message or part of the message is up to the MUA generating the
       MDN.  However, in the case of encrypted messages requesting MDNs,
       encrypted message text MUST be returned, if it is returned at
       all, only in its original encrypted form.

   NOTE: For message disposition notifications gatewayed from foreign
   systems, the header fields of the original message may not be
   available.  In this case, the third component of the MDN may be
   omitted, or it may contain "simulated" RFC-MSGFMT [2] header fields
   that contain equivalent information.  In particular, it is very
   desirable to preserve the subject and date fields from the original
   message.

   The MDN MUST be addressed (in both the message header field and the
   transport envelope) to the address(es) from the Disposition-
   Notification-To header field from the original message for which the
   MDN is being generated.

   The From field of the message header field of the MDN MUST contain
   the address of the person for whom the message disposition
   notification is being issued.

   The envelope sender address (i.e., SMTP MAIL FROM) of the MDN MUST be
   null (<>), specifying that no Delivery Status Notification messages
   or other messages indicating successful or unsuccessful delivery are
   to be sent in response to an MDN.

   A message disposition notification MUST NOT itself request an MDN.
   That is, it MUST NOT contain a Disposition-Notification-To header
   field.

   The Message-ID header field (if present) for an MDN MUST be different
   from the Message-ID of the message for which the MDN is being issued.

   A particular MDN describes the disposition of exactly one message for
   exactly one recipient.  Multiple MDNs may be generated as a result of
   one message submission, one per recipient.  However, due to the
   circumstances described in Section 2.1, MDNs may not be generated for
   some recipients for which MDNs were requested.




Hansen & Melnikov        Expires January 4, 2015               [Page 10]


Internet-Draft                     MDN                         July 2014


3.1.  The message/disposition-notification content-type

   The message/disposition-notification content-type is defined as
   follows:


   MIME type name:     message


   MIME subtype name:  disposition-notification


   Optional parameters:  none


   Encoding considerations:  "7bit" encoding is sufficient and MUST be
                       used to maintain readability when viewed by non-
                       MIME mail readers.


   Security considerations:  discussed in Section 6 of this memo.

   (While the 7bit restriction applies to the message/disposition-
   notification portion of the multipart/report content, it does not
   apply to the optional third portion of the multipart/report content.)

   The message/disposition-notification report type for use in the
   multipart/report is "disposition-notification".

   The body of a message/disposition-notification consists of one or
   more "fields" formatted according to the ABNF of RFC-MSGFMT [2]
   header "fields".  The syntax of the message/disposition-notification
   content is as follows:

   disposition-notification-content = [ reporting-ua-field CRLF ]
             [ mdn-gateway-field CRLF ]
             [ original-recipient-field CRLF ]
             final-recipient-field CRLF
             [ original-message-id-field CRLF ]
             disposition-field CRLF
             *( failure-field CRLF )
             *( error-field CRLF )
             *( extension-field CRLF )
   extension-field = extension-field-name ":" *(CFWS / text)
   extension-field-name = field-name

   [[ more work needed here ]]




Hansen & Melnikov        Expires January 4, 2015               [Page 11]


Internet-Draft                     MDN                         July 2014


   [[CREF6: Is this wording okay ? ]] Note that the order of the above
   fields is fixed.

3.1.1.  General conventions for fields

   Since these fields are defined according to the rules of RFC-MSGFMT
   [2], the same conventions for continuation lines and comments apply.
   Notification fields may be continued onto multiple lines by beginning
   each additional line with a SPACE or HTAB.  Text that appears in
   parentheses is considered a comment and not part of the contents of
   that notification field.  Field names are case-insensitive, so the
   names of notification fields may be spelled in any combination of
   upper and lower case letters.  Comments in notification fields may
   use the "encoded-word" construct defined in RFC-MIME-HEADER [5].

3.1.2.  "*-type" subfields

   Several fields consist of a "-type" subfield, followed by a semi-
   colon, followed by "*text".  [[ more work needed here ]]
   [[CREF7: ( Shouldn't this allow FWS somehow?  Alexey: yes!) ]]
   [[CREF8: ( I see that address-type and mta-name-type uses atom
   instead of *text, which not only permits FWS, but goes further to
   allow CFWS. ) ]] For these fields, the keyword used in the address-
   type or MTA-type subfield indicates the expected format of the
   address or MTA-name that follows.

   The "-type" subfields are defined as follows:


   a.  An "address-type" specifies the format of a mailbox address.  For
       example, Internet Mail addresses use the "rfc822" address-type.

   address-type = atom

       [[ more work needed here ]]
       [[CREF9: This is not *text ]]


   b.  An "MTA-name-type" specifies the format of a mail transfer agent
       name.  For example, for an SMTP server on an Internet host, the
       MTA name is the domain name of that host, and the "dns" MTA-name-
       type is used.

   mta-name-type = atom

       [[ more work needed here ]]
       [[CREF10: This is not *text ]]




Hansen & Melnikov        Expires January 4, 2015               [Page 12]


Internet-Draft                     MDN                         July 2014


   Values for address-type and mta-name-type are case-insensitive.
   Thus, address-type values of "RFC822" and "rfc822" are equivalent.

   The Internet Assigned Numbers Authority (IANA) maintains a registry
   of address-type and mta-name-type values, along with descriptions of
   the meanings of each, or a reference to one or more specifications
   that provide such descriptions.  (The "rfc822" address-type is
   defined in RFC-DSN-SMTP [7].)  Registration forms for address-type
   and mta-name-type appear in RFC-DSN-FORMAT [8].

3.2.  Message/disposition-notification Fields

3.2.1.  The Reporting-UA field

   reporting-ua-field = "Reporting-UA" ":" ua-name [ ";" ua-product ]
   ua-name = *text-no-semi
   ua-product = *text-no-semi
   text-no-semi = %d1-9 /         ; text characters excluding NUL, CR,
                  %d11 / %d12 / %d14-58 / %d60-127  ; LF, or semi-colon

   The Reporting-UA field is defined as follows:

   An MDN describes the disposition of a message after it has been
   delivered to a recipient.  In all cases, the Reporting-UA is the MUA
   that performed the disposition described in the MDN.  This field is
   optional, but recommended.  For Internet Mail user agents, it is
   recommended that this field contain both: the DNS name of the
   particular instance of the MUA that generated the MDN, and the name
   of the product.  For example,

   Reporting-UA:  pc.example.com; Foomail 97.1

   If the reporting MUA consists of more than one component (e.g., a
   base program and plug-ins), this may be indicated by including a list
   of product names.

3.2.2.  The MDN-Gateway field

   The MDN-Gateway field indicates the name of the gateway or MTA that
   translated a foreign (non-Internet) message disposition notification
   into this MDN.  This field MUST appear in any MDN that was translated
   by a gateway from a foreign system into MDN format, and MUST NOT
   appear otherwise.

   mdn-gateway-field = "MDN-Gateway" ":" mta-name-type ";" mta-name
   mta-name = *text





Hansen & Melnikov        Expires January 4, 2015               [Page 13]


Internet-Draft                     MDN                         July 2014


   For gateways into Internet Mail, the MTA-name-type will normally be
   "smtp", and the mta-name will be the Internet domain name of the
   gateway.

3.2.3.  Original-Recipient field

   The Original-Recipient field indicates the original recipient address
   as specified by the sender of the message for which the MDN is being
   issued.  For Internet Mail messages, the value of the Original-
   Recipient field is obtained from the Original-Recipient header field
   from the message for which the MDN is being generated.  If there is
   no Original-Recipient header field in the message, then the Original-
   Recipient field MUST be omitted, unless the same information is
   reliably available some other way.  If there is an Original-Recipient
   header field in the original message (or original recipient
   information is reliably available some other way), then the Original-
   Recipient field must be supplied.  If there is more than one
   Original-Recipient header field in the message, the MUA may choose
   the one to use, or act as if no Original-Recipient header field is
   present.

   original-recipient-field =
             "Original-Recipient" ":" address-type ";" generic-address
   generic-address = *text

   The address-type field indicates the type of the original recipient
   address.  If the message originated within the Internet, the address-
   type field will normally be "rfc822", and the address will be
   according to the syntax specified in RFC-MSGFMT [2].  The value
   "unknown" should be used if the Reporting MUA cannot determine the
   type of the original recipient address from the message envelope.
   This address is the same as that provided by the sender and can be
   used to automatically correlate MDN reports with original messages on
   a per recipient basis.

3.2.4.  Final-Recipient field

   The Final-Recipient field indicates the recipient for which the MDN
   is being issued.  This field MUST be present.

   The syntax of the field is as follows:

   final-recipient-field =
             "Final-Recipient" ":" address-type ";" generic-address

   The generic-address subfield of the Final-Recipient field MUST
   contain the mailbox address of the recipient (from the From header
   field of the MDN) as it was when the MDN was generated by the MUA.



Hansen & Melnikov        Expires January 4, 2015               [Page 14]


Internet-Draft                     MDN                         July 2014


   The Final-Recipient address may differ from the address originally
   provided by the sender, because it may have been transformed during
   forwarding and gatewaying into a totally unrecognizable mess.
   However, in the absence of the optional Original-Recipient field, the
   Final-Recipient field and any returned content may be the only
   information available with which to correlate the MDN with a
   particular message recipient.

   The address-type subfield indicates the type of address expected by
   the reporting MTA in that context.  Recipient addresses obtained via
   SMTP will normally be of address-type "rfc822".

   Since mailbox addresses (including those used in the Internet) may be
   case sensitive, the case of alphabetic characters in the address MUST
   be preserved.

3.2.5.  Original-Message-ID field

   The Original-Message-ID field indicates the message-ID of the message
   for which the MDN is being issued.  It is obtained from the Message-
   ID header field of the message for which the MDN is issued.  This
   field MUST be present if the original message contained a Message-ID
   header field.  The syntax of the field is as follows:

   original-message-id-field =
             "Original-Message-ID" ":" msg-id

   The msg-id token is as specified in RFC-MSGFMT [2].

3.2.6.  Disposition field

   The Disposition field indicates the action performed by the
   Reporting-MUA on behalf of the user.  This field MUST be present.

   The syntax for the Disposition field is:
















Hansen & Melnikov        Expires January 4, 2015               [Page 15]


Internet-Draft                     MDN                         July 2014


   disposition-field =
             "Disposition" ":" [FWS] disposition-mode ";"
             [FWS] disposition-type
             [ "/" disposition-modifier
             *( "," disposition-modifier ) ]
   disposition-mode = action-mode "/" [FWS] sending-mode
   action-mode = "manual-action" / "automatic-action"
   sending-mode = "MDN-sent-manually" / "MDN-sent-automatically"
   disposition-type = "displayed" / "deleted" / "dispatched" /
             "processed"
   disposition-modifier = [FWS]
             ("error" / disposition-modifier-extension)
   disposition-modifier-extension = atom

   The disposition-mode, disposition-type, and disposition-modifier may
   be spelled in any combination of upper and lower case characters.

3.2.6.1.  Disposition modes

   The following disposition modes are defined:


   "manual-action"     The disposition described by the disposition type
                       was a result of an explicit instruction by the
                       user rather than some sort of automatically
                       performed action.


   "automatic-action"  The disposition described by the disposition type
                       was a result of an automatic action, rather than
                       an explicit instruction by the user for this
                       message.

   "Manual-action" and "automatic-action" are mutually exclusive.  One
   or the other MUST be specified.


   "MDN-sent-manually" The user explicitly gave permission for this
                       particular MDN to be sent.


   "MDN-sent-automatically"  The MDN was sent because the MUA had
                       previously been configured to do so
                       automatically.

   "MDN-sent-manually" and "MDN-sent-automatically" are mutually
   exclusive.  One or the other MUST be specified.




Hansen & Melnikov        Expires January 4, 2015               [Page 16]


Internet-Draft                     MDN                         July 2014


3.2.6.2.  Disposition types

   The following disposition-types are defined:


   "displayed"         The message has been displayed by the MUA to
                       someone reading the recipient's mailbox.  There
                       is no guarantee that the content has been read or
                       understood.


   "dispatched"        The message has been sent somewhere in some
                       manner (e.g., printed, faxed, forwarded) without
                       necessarily having been previously displayed to
                       the user.  The user may or may not see the
                       message later.


   "processed"         The message has been processed in some manner
                       (i.e., by some sort of rules or server) without
                       being displayed to the user.  The user may or may
                       not see the message later, or there may not even
                       be a human user associated with the mailbox.


   "deleted"           The message has been deleted.  The recipient may
                       or may not have seen the message.  The recipient
                       might "undelete" the message at a later time and
                       read the message.

3.2.6.3.  Disposition modifiers

   Only the extension disposition modifiers is defined:


   disposition-modifier-extension
                       Disposition modifiers may be defined in the
                       future by later revisions or extensions to this
                       specification.  Disposition value names beginning
                       with "X-" will never be defined as standard
                       values; such names are reserved for experimental
                       use.  MDN disposition value names NOT beginning
                       with "X-" MUST be registered with the Internet
                       Assigned Numbers Authority (IANA) and described
                       in a standards-track RFC or an experimental RFC
                       approved by the IESG.  (See Section 10 for a
                       registration form.)  MDNs with disposition
                       modifier names not understood by the receiving



Hansen & Melnikov        Expires January 4, 2015               [Page 17]


Internet-Draft                     MDN                         July 2014


                       MUA MAY be silently ignored or placed in the
                       user's mailbox without special interpretation.
                       They MUST not cause any error message to be sent
                       to the sender of the MDN.

   If an MUA developer does not wish to register the meanings of such
   disposition modifier extensions, "X-" modifiers may be used for this
   purpose.  To avoid name collisions, the name of the MUA
   implementation should follow the "X-", (e.g., "X-Foomail-").

   It is not required that an MUA be able to generate all of the
   possible values of the Disposition field.

   A user agent MUST NOT issue more than one MDN on behalf of each
   particular recipient.  That is, once an MDN has been issued on behalf
   of a recipient, no further MDNs may be issued on behalf of that
   recipient, even if another disposition is performed on the message.
   However, if a message is forwarded, a "dispatched" MDN MAY be issued
   for the recipient doing the forwarding and the recipient of the
   forwarded message may also cause an MDN to be generated.

3.2.7.  Failure and Error Fields

   The Failure and Error fields are used to supply additional
   information in the form of text messages when the "failure"
   disposition type or "error" disposition modifier appear.  The syntax
   is as follows:

   failure-field = "Failure" ":" *text
   error-field = "Error" ":" *text

3.3.  Extension-fields

   Additional MDN fields may be defined in the future by later revisions
   or extensions to this specification.  Extension-field names beginning
   with "X-" will never be defined as standard fields; such names are
   reserved for experimental use.  MDN field names NOT beginning with
   "X-" MUST be registered with the Internet Assigned Numbers Authority
   (IANA) and described in a standards-track RFC or an experimental RFC
   approved by the IESG.  (See Section 10 for a registration form.)  MDN
   Extension-fields may be defined for the following reasons:


   a.  To allow additional information from foreign disposition reports
       to be tunneled through Internet MDNs.  The names of such MDN
       fields should begin with an indication of the foreign environment
       name (e.g., X400-Physical-Forwarding-Address).




Hansen & Melnikov        Expires January 4, 2015               [Page 18]


Internet-Draft                     MDN                         July 2014


   b.  To allow transmission of diagnostic information that is specific
       to a particular mail user agent (MUA).  The names of such MDN
       fields should begin with an indication of the MUA implementation
       that produced the MDN (e.g., Foomail-information).

   If an application developer does not wish to register the meanings of
   such extension fields, "X-" fields may be used for this purpose.  To
   avoid name collisions, the name of the application implementation
   should follow the "X-", (e.g., "X-Foomail-Log-ID" or "X-Foomail-EDI-
   info").

4.  Timeline of events

   The following timeline shows when various events in the processing of
   a message and generation of MDNs take place:


   -- User composes message


   -- User tells MUA to send message


   -- MUA passes message to MTA (original recipient information passed
      along)


   -- MTA sends message to next MTA


   -- Final MTA receives message


   -- Final MTA delivers message to MUA (possibly generating a DSN)


   -- MUA performs automatic processing and generates corresponding MDNs
      ("dispatched", "processed" or "deleted" disposition type with
      "automatic-action" and "MDN-sent-automatically" disposition modes)


   -- MUA displays list of messages to user


   -- User selects a message and requests that some action be performed
      on it.





Hansen & Melnikov        Expires January 4, 2015               [Page 19]


Internet-Draft                     MDN                         July 2014


   -- MUA performs requested action and, with user's permission, sends
      an appropriate MDN ("displayed", "dispatched", "processed", or
      "deleted" disposition type, with "manual-action" and "MDN-sent-
      manually" or "MDN-sent-automatically" disposition mode).


   -- User possibly performs other actions on message, but no further
      MDNs are generated.

5.  Conformance and Usage Requirements

   An MUA or gateway conforms to this specification if it generates MDNs
   according to the protocol defined in this memo.  It is not necessary
   to be able to generate all of the possible values of the Disposition
   field.

   MUAs and gateways MUST NOT generate the Original-Recipient field of
   an MDN unless the mail protocols provide the address originally
   specified by the sender at the time of submission.  Ordinary SMTP
   does not make that guarantee, but the SMTP extension defined in RFC-
   DSN-SMTP [7] permits such information to be carried in the envelope
   if it is available.  The Original-Recipient header field defined in
   this document provides a way for the MTA to pass the original
   recipient address to the MUA.

   Each sender-specified recipient address may result in more than one
   MDN.  If an MDN is requested for a recipient that is forwarded to
   multiple recipients of an "alias" (as defined in RFC-DSN-SMTP [7],
   section 6.2.7.3), each of the recipients may issue an MDN.

   Successful distribution of a message to a mailing list exploder
   SHOULD be considered the final disposition of the message.  A mailing
   list exploder MAY issue an MDN with a disposition type of "processed"
   and disposition modes of "automatic-action" and "MDN-sent-
   automatically" indicating that the message has been forwarded to the
   list.  In this case, the request for MDNs is not propagated to the
   members of the list.

   Alternatively, the mailing list exploder MAY issue no MDN and
   propagate the request for MDNs to all members of the list.  The
   latter behavior is not recommended for any but small, closely knit
   lists, as it might cause large numbers of MDNs to be generated and
   may cause confidential subscribers to the list to be revealed.  The
   mailing list exploder MAY also direct MDNs to itself, correlate them,
   and produce a report to the original sender of the message.

   This specification places no restrictions on the processing of MDNs
   received by user agents or mailing lists.



Hansen & Melnikov        Expires January 4, 2015               [Page 20]


Internet-Draft                     MDN                         July 2014


6.  Security Considerations

   The following security considerations apply when using MDNs:

6.1.  Forgery

   MDNs may be forged as easily as ordinary Internet electronic mail.
   User agents and automatic mail handling facilities (such as mail
   distribution list exploders) that wish to make automatic use of MDNs
   should take appropriate precautions to minimize the potential damage
   from denial-of-service attacks.

   Security threats related to forged MDNs include the sending of:


   a.  A falsified disposition notification when the indicated
       disposition of the message has not actually occurred,


   b.  Unsolicited MDNs

6.2.  Privacy

   Another dimension of security is privacy.  There may be cases in
   which a message recipient does not wish the disposition of messages
   addressed to him to be known, or is concerned that the sending of
   MDNs may reveal other sensitive information (e.g., when the message
   was read).  In this situation, it is acceptable for the MUA to
   silently ignore requests for MDNs.

   If the Disposition-Notification-To header field is passed on
   unmodified when a message is distributed to the subscribers of a
   mailing list, the subscribers to the list may be revealed to the
   sender of the original message by the generation of MDNs.

   Headers of the original message returned in part 3 of the multipart/
   report could reveal confidential information about host names and/or
   network topology inside a firewall.

   An unencrypted MDN could reveal confidential information about an
   encrypted message, especially if all or part of the original message
   is returned in part 3 of the multipart/report.  Encrypted MDNs are
   not defined in this specification.

   In general, any optional MDN field may be omitted if the Reporting
   MUA site or user determines that inclusion of the field would impose
   too great a compromise of site confidentiality.  The need for such




Hansen & Melnikov        Expires January 4, 2015               [Page 21]


Internet-Draft                     MDN                         July 2014


   confidentiality must be balanced against the utility of the omitted
   information in MDNs.

   In some cases, someone with access to the message stream may use the
   MDN request mechanism to monitor the mail reading habits of a target.
   If the target is known to generate MDN reports, they could add a
   disposition-notification-to field containing the envelope from
   address along with a source route.  The source route is ignored in
   the comparison so the addresses will always match.  But if the source
   route is honored when the notification is sent, it could direct the
   message to some other destination.  This risk can be minimized by not
   sending MDN's automatically.

6.3.  Non-Repudiation

   MDNs do not provide non-repudiation with proof of delivery.  Within
   the framework of today's Internet Mail, the MDNs defined in this
   document provide valuable information to the mail user; however, MDNs
   cannot be relied upon as a guarantee that a message was or was not
   seen by the recipient.  Even if MDNs are not actively forged, they
   may be lost in transit.  The recipient may bypass the MDN issuing
   mechanism in some manner.

   One possible solution for this purpose can be found in RFC-SEC-
   SERVICES [10].

6.4.  Mail Bombing

   The MDN request mechanism introduces an additional way of mailbombing
   a mailbox.  The MDN request notification provides an address to which
   MDN's should be sent.  It is possible for an attacking agent to send
   a potentially large set of messages to otherwise unsuspecting third
   party recipients with a false "disposition-notification-to:" address.
   Automatic, or simplistic processing of such requests would result in
   a flood of MDN notifications to the target of the attack.  Such an
   attack could overrun the capacity of the targeted mailbox and deny
   service.

   For that reason, MDN's SHOULD NOT be sent automatically where the
   "disposition-notification-to:" address is different from the envelope
   MAIL FROM address.  See Section 2.1 for further discussion.

7.  Collected Grammar

   NOTE: The following lexical tokens are defined in RFC-MSGFMT [2]:
   atom, CRLF, FWS, CFWS, field-name, mailbox, msg-id, text.  The
   definitions of attribute and value are as in the definition of the
   Content-Type header field in RFC-MIME-BODY [3].



Hansen & Melnikov        Expires January 4, 2015               [Page 22]


Internet-Draft                     MDN                         July 2014


   Message header fields:
      mdn-request-header =
             "Disposition-Notification-To" ":" [FWS]
                       mailbox *("," [FWS] mailbox)
      Disposition-Notification-Options =
             "Disposition-Notification-Options" ":" [FWS]
                       disposition-notification-parameter-list
      disposition-notification-parameter-list =
                       disposition-notification-parameter
                       *(";" [FWS] disposition-notification-parameter)
      disposition-notification-parameter = attribute [FWS] "=" [FWS]
                       importance "," [FWS] value *("," [FWS] value)
      importance = "required" / "optional"
      original-recipient-header =
             "Original-Recipient" ":" address-type ";" generic-address
   Report content:
      disposition-notification-content =
             [ reporting-ua-field CRLF ]
             [ mdn-gateway-field CRLF ]
             [ original-recipient-field CRLF ]
             final-recipient-field CRLF
             [ original-message-id-field CRLF ]
             disposition-field CRLF
             *( failure-field CRLF )
             *( error-field CRLF )
             *( extension-field CRLF )
      address-type = atom
      mta-name-type = atom
      reporting-ua-field = "Reporting-UA" ":" ua-name [ ";" ua-product ]
      ua-name = *text-no-semi
      ua-product = *text-no-semi
      text-no-semi = %d1-9 /        ; text characters excluding NUL, CR,
              %d11 / %d12 / %d14-58 / %d60-127      ; LF, or semi-colon
      mdn-gateway-field = "MDN-Gateway" ":" mta-name-type ";" mta-name
      mta-name = *text
      original-recipient-field =
             "Original-Recipient" ":" address-type ";" generic-address
      generic-address = *text
      final-recipient-field =
             "Final-Recipient" ":" address-type ";" generic-address
      original-message-id-field = "Original-Message-ID" ":" msg-id
      disposition-field =
             "Disposition" ":" [FWS] disposition-mode ";"
             [FWS] disposition-type
             [ "/" disposition-modifier
             *( "," disposition-modifier ) ]
      disposition-mode = action-mode "/" [FWS] sending-mode
      action-mode = "manual-action" / "automatic-action"



Hansen & Melnikov        Expires January 4, 2015               [Page 23]


Internet-Draft                     MDN                         July 2014


      sending-mode = "MDN-sent-manually" / "MDN-sent-automatically"
      disposition-type = "displayed" / "deleted" / "dispatched" /
              "processed"
      disposition-modifier = [FWS]
              ("error" / disposition-modifier-extension)
      disposition-modifier-extension = atom
      failure-field = "Failure" ":" *text
      error-field = "Error" ":" *text
      extension-field = extension-field-name ":" *text
      extension-field-name = field-name

8.  Guidelines for Gatewaying MDNs

   NOTE: This section provides non-binding recommendations for the
   construction of mail gateways that wish to provide semi-transparent
   disposition notifications between the Internet and another electronic
   mail system.  Specific MDN gateway requirements for a particular pair
   of mail systems may be defined by other documents.

8.1.  Gatewaying from other mail systems to MDNs

   A mail gateway may issue an MDN to convey the contents of a "foreign"
   disposition notification over Internet Mail.  When there are
   appropriate mappings from the foreign notification elements to MDN
   fields, the information may be transmitted in those MDN fields.
   Additional information (such as might be needed to tunnel the foreign
   notification through the Internet) may be defined in extension MDN
   fields.  (Such fields should be given names that identify the foreign
   mail protocol, e.g., X400-* for X.400 protocol elements).

   The gateway must attempt to supply reasonable values for the
   Reporting-UA, Final-Recipient, and Disposition fields.  These will
   normally be obtained by translating the values from the foreign
   notification into their Internet-style equivalents.  However, some
   loss of information is to be expected.

   The sender-specified recipient address and the original message-id,
   if present in the foreign notification, should be preserved in the
   Original-Recipient and Original-Message-ID fields.

   The gateway should also attempt to preserve the "final" recipient
   address from the foreign system.  Whenever possible, foreign protocol
   elements should be encoded as meaningful printable ASCII strings.

   For MDNs produced from foreign disposition notifications, the name of
   the gateway MUST appear in the MDN-Gateway field of the MDN.





Hansen & Melnikov        Expires January 4, 2015               [Page 24]


Internet-Draft                     MDN                         July 2014


8.2.  Gatewaying from MDNs to other mail systems

   It may be possible to gateway MDNs from the Internet into a foreign
   mail system.  The primary purpose of such gatewaying is to convey
   disposition information in a form that is usable by the destination
   system.  A secondary purpose is to allow "tunneling" of MDNs through
   foreign mail systems in case the MDN may be gatewayed back into the
   Internet.

   In general, the recipient of the MDN (i.e., the sender of the
   original message) will want to know, for each recipient: the closest
   available approximation to the original recipient address, and the
   disposition (displayed, printed, etc.).

   If possible, the gateway should attempt to preserve the Original-
   Recipient address and Original-Message-ID (if present) in the
   resulting foreign disposition report.

   If it is possible to tunnel an MDN through the destination
   environment, the gateway specification may define a means of
   preserving the MDN information in the disposition reports used by
   that environment.

8.3.  Gatewaying of MDN-requests to other mail systems

   By use of the separate disposition-notification-to request header
   field, this specification offers a richer functionality than most, if
   not all, other email systems.  In most other email systems, the
   notification recipient is identical to the message sender as
   indicated in the "from" address.  There are two interesting cases
   when gatewaying into such systems:


   1.  If the address in the disposition-notification-to header field is
       identical to the address in the SMTP "MAIL FROM", the expected
       behavior will result, even if the disposition-notification-to
       information is lost.  Systems should propagate the MDN request.


   2.  If the address in the disposition-notification-to header field is
       different from the address in the SMTP "MAIL FROM", gatewaying
       into a foreign system without a separate notification address
       will result in unintended behavior.  This is especially important
       when the message arrives via a mailing list expansion software
       that may specifically replace the SMTP "MAIL FROM" address with
       an alternate address.  In such cases, the MDN request should not
       be gatewayed and should be silently dropped.  This is consistent
       with other forms of non-support for MDN.



Hansen & Melnikov        Expires January 4, 2015               [Page 25]


Internet-Draft                     MDN                         July 2014


9.  Example

   NOTE: This example is provided as illustration only, and is not
   considered part of the MDN protocol specification.  If the example
   conflicts with the protocol definition above, the example is wrong.

   Likewise, the use of *-type subfield names or extension fields in
   this example is not to be construed as a definition for those type
   names or extension fields.

   This is an MDN issued after a message has been displayed to the user
   of an Internet Mail user agent.

   Date: Wed, 20 Sep 1995 00:19:00 (EDT) -0400
   From: Joe Recipient <Joe_Recipient@example.com>
   Message-Id: <199509200019.12345@example.com>
   Subject: Disposition notification
   To: Jane Sender <Jane_Sender@example.org>
   MIME-Version: 1.0
   Content-Type: multipart/report; report-type=disposition-notification;
      boundary="RAA14128.773615765/example.com"

   --RAA14128.773615765/example.com

   The message sent on 1995 Sep 19 at 13:30:00 (EDT) -0400 to Joe
   Recipient <Joe_Recipient@example.com> with subject "First draft of
   report" has been displayed.
   This is no guarantee that the message has been read or understood.

   --RAA14128.773615765/example.com
   content-type: message/disposition-notification

   Reporting-UA: joes-pc.cs.example.com; Foomail 97.1
   Original-Recipient: rfc822;Joe_Recipient@example.com
   Final-Recipient: rfc822;Joe_Recipient@example.com
   Original-Message-ID: <199509192301.23456@example.org>
   Disposition: manual-action/MDN-sent-manually; displayed

   --RAA14128.773615765/example.com
   content-type: message/rfc822

   [original message optionally goes here]

   --RAA14128.773615765/example.com--







Hansen & Melnikov        Expires January 4, 2015               [Page 26]


Internet-Draft                     MDN                         July 2014


10.  IANA Considerations

   This document specifies three types of parameters that must be
   registered with the Internet Assigned Numbers Authority (IANA).

   The forms below are for use when registering a new disposition-
   notification-parameter name for the Disposition-Notification-Options
   header field, a new disposition modifier name, or a new MDN extension
   field.  Each piece of information required by a registration form may
   be satisfied either by providing the information on the form itself,
   or by including a reference to a published, publicly available
   specification that includes the necessary information.  IANA MAY
   reject registrations because of incomplete registration forms or
   incomplete specifications.

   To register, complete the following applicable form and send it via
   electronic mail to <IANA@IANA.ORG>.

10.1.  Disposition-Notification-Options header field disposition-
       notification-parameter names

   A registration for a Disposition-Notification-Options header field
   disposition-notification-parameter name MUST include the following
   information:


   a.  The proposed disposition-notification-parameter name.


   b.  The syntax for disposition-notification-parameter values,
       specified using BNF, ABNF, regular expressions, or other non-
       ambiguous language.


   c.  If disposition-notification-parameter values are not composed
       entirely of graphic characters from the US-ASCII repertoire, a
       specification for how they are to be encoded as graphic US-ASCII
       characters in a Disposition-Notification-Options header field.


   d.  A reference to a standards track RFC or experimental RFC approved
       by the IESG that describes the semantics of the disposition-
       notification-parameter values.








Hansen & Melnikov        Expires January 4, 2015               [Page 27]


Internet-Draft                     MDN                         July 2014


10.2.  Disposition modifier names

   A registration for a disposition-modifier name (used in the
   Disposition field of a message/disposition-notification) MUST include
   the following information:


   a.  The proposed disposition-modifier name.


   b.  A reference to a standards track RFC or experimental RFC approved
       by the IESG that describes the semantics of the disposition
       modifier.

10.3.  MDN extension field names

   A registration for an MDN extension-field name MUST include the
   following information:


   a.  The proposed extension field name.


   b.  The syntax for extension values, specified using BNF, ABNF,
       regular expressions, or other non-ambiguous language.


   c.  If extension-field values are not composed entirely of graphic
       characters from the US-ASCII repertoire, a specification for how
       they are to be encoded as graphic US-ASCII characters in a
       Disposition-Notification-Options header field.


   d.  A reference to a standards track RFC or experimental RFC approved
       by the IESG that describes the semantics of the extension field.

11.  Acknowledgements

   The contributions of Bruce Lilly and Alfred Hoenes are gratefully
   acknowledged for this revision.

   The contributions of Roger Fajman and Greg Vaudreuil to earlier
   versions of this document are also gratefully acknowledged.








Hansen & Melnikov        Expires January 4, 2015               [Page 28]


Internet-Draft                     MDN                         July 2014


12.  References

12.1.  Normative References

   [1]        Klensin, J., "Simple Mail Transfer Protocol", RFC 2821,
              April 2001.

   [2]        Resnick, P., Ed., "Internet Message Format", RFC 5322,
              October 2008.

   [3]        Freed, N. and N. Borenstein, "Multipurpose Internet Mail
              Extensions (MIME) Part One: Format of Internet Message
              Bodies", RFC 2045, November 1996.

   [4]        Freed, N. and N. Borenstein, "Multipurpose Internet Mail
              Extensions (MIME) Part Two: Media Types", RFC 2046,
              November 1996.

   [5]        Moore, K., "MIME (Multipurpose Internet Mail Extensions)
              Part Three: Message Header Extensions for Non-ASCII Text",
              RFC 2047, November 1996.

   [6]        Vaudreuil, G., "The Multipart/Report Content Type for the
              Reporting of Mail System Administrative Messages", RFC
              3462, January 2003.

   [7]        Moore, K., "Simple Mail Transfer Protocol (SMTP) Service
              Extension for Delivery Status Notifications (DSNs)", RFC
              3461, January 2003.

   [8]        Moore, K. and G. Vaudreuil, "An Extensible Message Format
              for Delivery Status Notifications", RFC 3464, January
              2003.

   [9]        Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

12.2.  Informative References

   [10]       Hoffman, P., "Enhanced Security Services for S/MIME", RFC
              2634, June 1999.

Appendix A.  Changes from RFC 3798

   The values of "dispatched" and "processed" were lost from the ABNF
   for "disposition-type".





Hansen & Melnikov        Expires January 4, 2015               [Page 29]


Internet-Draft                     MDN                         July 2014


   Because the warning disposition modifier was previously removed,
   warning-field has also been removed.

   The ABNF for ua-name and ua-product included semi-colon, which could
   not be distinguished from *text in the production.  The ua-name and
   ua-product definitions were restricted to not include semi-colon.

   The ABNF did not indicate all places that whitespace was allowable,
   in particular folding whitespace, although all implementations allow
   whitespace and folding in the header fields just like any other
   RFC5322 [2]-formatted header field.  There were also a number of
   places in the ABNF that inconsistently permitted comments and
   whitespace in one leg of the production and not another.  The ABNF
   now specifies FWS and CFWS in several places that should have already
   been specified by the grammar.

   Extension-field was defined in the collected grammar but not in the
   main text.

   [[CREF11: Shouldn't the places we use *text and *text-no-semi allow
   FWS? ]]

   The comparison of mailboxes in Disposition-Notification-To to the
   Return-Path addr-spec was clarified.

   The use of the grammar production "parameter" was confusing with the
   RFC2045 [3] production of the same name, as well as other uses of the
   same term.  These have been clarified.
   [[CREF12: Not sure what to do with this one: (From Bruce) In the case
   of the message header fields, RFC 2822 also specifies minimum and
   maximum counts for each header field, and similar guidance would
   clarify 3798 (e.g. are multiple Disposition-Notification-Options
   fields permitted in a single message header, and if so, what
   semantics apply?).  ]]
   [[CREF13: Not sure what to do with this one: (From Bruce) Note also
   that RFC 2045 is itself based on RFC 822 rather than 2822, so the
   issue of where CFWS is permitted or prohibited should probably be
   clearly specified where "attribute" and "value" are used.  Note
   further that the RFC 2045 definitions are clarified by errata and
   modified by RFC 2231, and by RFC 2231 errata.  Finally, note that RFC
   2231 has provisions for continuation of long parameter values (where
   there would otherwise be problems with the maximum line length
   specifications of RFCs 822 and 2822), specification of language and
   charset, and provision for compatible handling of non-ASCII text,
   none of which are provided for in the RFC 3798 disposition-
   notification parameters.  It might be a good idea to think about that
   now, as a future change would almost certainly reset the document
   status to "Proposed".  ]]



Hansen & Melnikov        Expires January 4, 2015               [Page 30]


Internet-Draft                     MDN                         July 2014


   A clarification was added on the extent of the 7bit nature of MDNs.

   Uses of the terms "may" and "might" were clarified.

   A clarification was added on the order of the fields in the message/
   disposition-notification content.
   [[CREF14: Not sure what to do with this one: (From Bruce) 3.1.1
   explicitly mentions use of RFC 2047 encoded-words in comments
   (however, as noted above there is no explicit provision for
   comments), but fails to mention the other contexts in which encoded-
   words may be used, viz. in an RFC [2]822 "phrase" (e.g. in the
   display name of a name-addr mailbox in Disposition-Notification-To
   (therefore, the discussion of encoded-words should probably be moved
   earlier in the document, prior to the specification of Disposition-
   Notification-To]), and in unstructured text (i.e. every instance of
   *text in the ABNF).  In particular, use of encoded-words might be
   highly desirable in the following places: *) the ua-product portion
   of the Reporting-UA field; *) the generic-address part of the
   Original-Recipient and Final-Recipient fields; *) the (unstructured)
   field bodies of Error, Failure, and Warning fields; in structured
   extension fields where the context (per RFC 2047) is appropriate in
   unstructured extension fields; *) in X- extension fields (see RFC
   2047 for related X- message header fields).  In cases where the field
   syntax is shared with DSN fields, some coordination with the RFC 346x
   authors might be desirable.  ]]
   [[CREF15: I think a couple of clarifications are in order: 1) This
   restriction is within a given mail user agent.  If the user uses
   multiple MUAs, it is possible that multiple MDNs MAY be generated.
   2) A mail user agent SHOULD use underlying protocol support when
   possible to prevent multiple MDNs from being generated.  If
   underlying protocol support is not available, the mail user agent
   MUST use local knowledge to prevent multiple MDNs.  I don't think we
   need to worry about the case of an MUA error; accidents and bad
   implementations DO happen.  (From Bruce) 3.2.6.3 prohibition against
   multiple MDNs being issued on behalf of each recipient poses some
   implementation difficulties: *) While IMAP servers maintain state
   that could possibly be used to prevent issuance of multiple MDNs, the
   POP protocol has no such provision.  Even in the case of IMAP, there
   is some ambiguity in the case of shared mailboxes.  *) Some MUAs are
   known to have extreme difficulty keeping track of which messages have
   been seen, let alone responded to.  Software version updates, minor
   configuration changes (e.g. domain name or IP address change of POP
   or IMAP server) are known to "confuse" some MUAs.  *) there is no
   standardized mechanism for communicating status between multiple MUAs
   accessing the same mailbox (except in the case of IMAP, as noted
   above).  Therefore, if an MDN is sent when a message is viewed (etc.)
   using one MUA, a different MUA subsequently being used to view the
   same message in the same user's mailbox (either via POP, or from a



Hansen & Melnikov        Expires January 4, 2015               [Page 31]


Internet-Draft                     MDN                         July 2014


   flat file mailbox) might have no way to determine that an MDN had
   already been sent.  This is a fundamental difficulty with the
   specified protocol (relaxing "MUST NOT" to "SHOULD NOT" is one
   possible way around that difficulty -- otherwise the document
   contains a "known technical omission" viz. no defined means of
   establishing whether or not an MDN has already been sent for a
   particular message.  I believe that "known technical omissions" are a
   barrier to further Standards Track progress).  *) Due to aliases,
   forwarding, etc. an original message sent to multiple addresses might
   end up as multiple copies in a single recipient's mailbox.  It is
   unclear whether or not multiple MDNs are permitted in that case (the
   Message-ID, if present in the original, will be the same in the
   copies, and the "particular recipient" could be interpreted as being
   the same, even though the addresses specified in the original message
   transport envelope might have appeared to have been distinct to the
   originator who requested MDNs.  ]]

Authors' Addresses

   Tony Hansen (editor)
   AT&T Laboratories
   200 Laurel Ave. South
   Middletown, NJ  07748
   USA

   Email: tony+rfc3798@maillennium.att.com


   Alexey Melnikov (editor)
   Isode Ltd
   14 Castle Mews
   Hampton, Middlesex  TW12 2NP
   UK

   Email: Alexey.Melnikov@isode.com
















Hansen & Melnikov        Expires January 4, 2015               [Page 32]


Html markup produced by rfcmarkup 1.129c, available from https://tools.ietf.org/tools/rfcmarkup/