idnits 2.17.1 draft-melnikov-mdn-3798bis-eai-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 14 instances of too long lines in the document, the longest one being 16 characters in excess of 72. -- The draft header indicates that this document updates RFC6533, but the abstract doesn't seem to directly say this. It does mention RFC6533 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords -- however, there's a paragraph with a matching beginning. Boilerplate error? (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). (Using the creation date from RFC2046, updated by this document, for RFC5378 checks: 1995-04-14) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (August 14, 2016) is 2805 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'FWS' is mentioned on line 1219, but not defined == Missing Reference: 'CFWS' is mentioned on line 386, but not defined == Missing Reference: 'RFCXXX' is mentioned on line 967, but not defined == Missing Reference: 'RFCXXXX' is mentioned on line 543, but not defined -- Obsolete informational reference (is this intentional?): RFC 3501 (Obsoleted by RFC 9051) -- Obsolete informational reference (is this intentional?): RFC 5226 (Obsoleted by RFC 8126) Summary: 1 error (**), 0 flaws (~~), 6 warnings (==), 5 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group T. Hansen, Ed. 3 Internet-Draft AT&T Laboratories 4 Obsoletes: 3798 (if approved) A. Melnikov, Ed. 5 Updates: 2046, 3461, 6533 (if approved) Isode Ltd 6 Intended status: Standards Track August 14, 2016 7 Expires: February 15, 2017 9 Message Disposition Notification 10 draft-melnikov-mdn-3798bis-eai-01.txt 12 Abstract 14 This memo defines a MIME content-type that may be used by a mail user 15 agent (MUA) or electronic mail gateway to report the disposition of a 16 message after it has been successfully delivered to a recipient. 17 This content-type is intended to be machine-processable. Additional 18 message header fields are also defined to permit Message Disposition 19 Notifications (MDNs) to be requested by the sender of a message. The 20 purpose is to extend Internet Mail to support functionality often 21 found in other messaging systems, such as X.400 and the proprietary 22 "LAN-based" systems, and often referred to as "read receipts," 23 "acknowledgements", or "receipt notifications." The intention is to 24 do this while respecting privacy concerns, which have often been 25 expressed when such functions have been discussed in the past. 27 Because many messages are sent between the Internet and other 28 messaging systems (such as X.400 or the proprietary "LAN-based" 29 systems), the MDN protocol is designed to be useful in a multi- 30 protocol messaging environment. To this end, the protocol described 31 in this memo provides for the carriage of "foreign" addresses, in 32 addition to those normally used in Internet Mail. Additional 33 attributes may also be defined to support "tunneling" of foreign 34 notifications through Internet Mail. 36 This document obsoletes RFC 3798 and updates RFC 2046, RFC 3461 and 37 replaces MDN definition in RFC 6533. 39 Note: This draft shows how a combined MDN and EAI MDN document might 40 look like. This work represents opinion of editors about possible 41 future direction for a combined specification and is not the result 42 of consensus of any IETF WG. This draft can be used as a replacement 43 or update to draft-melnikov-mdn-3798bis-eai. 45 Status of This Memo 47 This Internet-Draft is submitted in full conformance with the 48 provisions of BCP 78 and BCP 79. 50 Internet-Drafts are working documents of the Internet Engineering 51 Task Force (IETF). Note that other groups may also distribute 52 working documents as Internet-Drafts. The list of current Internet- 53 Drafts is at http://datatracker.ietf.org/drafts/current/. 55 Internet-Drafts are draft documents valid for a maximum of six months 56 and may be updated, replaced, or obsoleted by other documents at any 57 time. It is inappropriate to use Internet-Drafts as reference 58 material or to cite them other than as "work in progress." 60 This Internet-Draft will expire on February 15, 2017. 62 Copyright Notice 64 Copyright (c) 2016 IETF Trust and the persons identified as the 65 document authors. All rights reserved. 67 This document is subject to BCP 78 and the IETF Trust's Legal 68 Provisions Relating to IETF Documents 69 (http://trustee.ietf.org/license-info) in effect on the date of 70 publication of this document. Please review these documents 71 carefully, as they describe your rights and restrictions with respect 72 to this document. Code Components extracted from this document must 73 include Simplified BSD License text as described in Section 4.e of 74 the Trust Legal Provisions and are provided without warranty as 75 described in the Simplified BSD License. 77 Table of Contents 79 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 80 1.1. Purposes . . . . . . . . . . . . . . . . . . . . . . . . 4 81 1.2. Requirements . . . . . . . . . . . . . . . . . . . . . . 4 82 1.3. Terminology . . . . . . . . . . . . . . . . . . . . . . . 5 83 2. Requesting Message Disposition Notifications . . . . . . . . 5 84 2.1. The Disposition-Notification-To Header . . . . . . . . . 5 85 2.2. The Disposition-Notification-Options Header . . . . . . . 7 86 2.3. The Original-Recipient Header Field . . . . . . . . . . . 8 87 2.4. Use with the Message/Partial Media Type . . . . . . . . . 9 88 3. Format of a Message Disposition Notification . . . . . . . . 10 89 3.1. The message/disposition-notification Media Type . . . . . 11 90 3.2. Message/disposition-notification Content Fields . . . . . 14 91 3.3. Extension-fields . . . . . . . . . . . . . . . . . . . . 20 92 3.4. UTF-8 Message Disposition Notifications . . . . . . . . . 21 93 3.4.1. The message/global-disposition-notification Media 94 Type . . . . . . . . . . . . . . . . . . . . . . . . 22 95 4. Timeline of events . . . . . . . . . . . . . . . . . . . . . 23 96 5. Conformance and Usage Requirements . . . . . . . . . . . . . 24 97 6. Security Considerations . . . . . . . . . . . . . . . . . . . 25 98 6.1. Forgery . . . . . . . . . . . . . . . . . . . . . . . . . 25 99 6.2. Privacy . . . . . . . . . . . . . . . . . . . . . . . . . 25 100 6.3. Non-Repudiation . . . . . . . . . . . . . . . . . . . . . 26 101 6.4. Mail Bombing . . . . . . . . . . . . . . . . . . . . . . 26 102 7. Collected ABNF Grammar . . . . . . . . . . . . . . . . . . . 27 103 8. Guidelines for Gatewaying MDNs . . . . . . . . . . . . . . . 29 104 8.1. Gatewaying from other mail systems to MDNs . . . . . . . 29 105 8.2. Gatewaying from MDNs to other mail systems . . . . . . . 30 106 8.3. Gatewaying of MDN-requests to other mail systems . . . . 30 107 9. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 108 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 32 109 10.1. Disposition-Notification-Options header field 110 disposition-notification-parameter names . . . . . . . . 33 111 10.2. Disposition modifier names . . . . . . . . . . . . . . . 34 112 10.3. MDN extension field names . . . . . . . . . . . . . . . 34 113 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 34 114 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 35 115 12.1. Normative References . . . . . . . . . . . . . . . . . . 35 116 12.2. Informative References . . . . . . . . . . . . . . . . . 36 117 Appendix A. Changes from RFC 3798 . . . . . . . . . . . . . . . 37 118 Appendix B. Changes from RFC 6533 . . . . . . . . . . . . . . . 38 119 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 38 121 1. Introduction 123 This memo defines a media type [RFC2046] for message disposition 124 notifications (MDNs). An MDN can be used to notify the sender of a 125 message of any of several conditions that may occur after successful 126 delivery, such as display of the message contents, printing of the 127 message, deletion (without display) of the message, or the 128 recipient's refusal to provide MDNs. The "message/disposition- 129 notification" content-type defined herein is intended for use within 130 the framework of the "multipart/report" content type defined in RFC- 131 REPORT [RFC6522]. 133 This memo defines the format of the notifications and the RFC-MSGFMT 134 [RFC5322] header fields used to request them. 136 This memo is an update to RFC 3798 and is intended to be published at 137 Internet Standard Level. 139 1.1. Purposes 141 The MDNs defined in this memo are expected to serve several purposes: 143 a. Inform human beings of the disposition of messages after 144 successful delivery, in a manner that is largely independent of 145 human language; 147 b. Allow mail user agents to keep track of the disposition of 148 messages sent, by associating returned MDNs with earlier message 149 transmissions; 151 c. Convey disposition notification requests and disposition 152 notifications between Internet Mail and "foreign" mail systems 153 via a gateway; 155 d. Allow "foreign" notifications to be tunneled through a MIME- 156 capable message system and back into the original messaging 157 system that issued the original notification, or even to a third 158 messaging system; 160 e. Allow language-independent, yet reasonably precise, indications 161 of the disposition of a message to be delivered. 163 1.2. Requirements 165 These purposes place the following constraints on the notification 166 protocol: 168 a. It must be readable by humans, and must be machine-parsable. 170 b. It must provide enough information to allow message senders (or 171 their user agents) to unambiguously associate an MDN with the 172 message that was sent and the original recipient address for 173 which the MDN was issued (if such information is available), even 174 if the message was forwarded to another recipient address. 176 c. It must also be able to describe the disposition of a message 177 independent of any particular human language or of the 178 terminology of any particular mail system. 180 d. The specification must be extensible in order to accommodate 181 future requirements. 183 1.3. Terminology 185 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 186 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 187 document are to be interpreted as described in RFC-KEYWORDS 188 [RFC2119]. 190 All syntax descriptions use the ABNF specified by RFC-MSGFMT 191 [RFC5322], in which the lexical tokens (used below) are defined: 192 "CRLF", "FWS", "CFWS", "field-name", "mailbox-list", "msg-id", and 193 "text". The following lexical tokens are defined in RFC-SMTP 194 [RFC5321]: "atom". 196 2. Requesting Message Disposition Notifications 198 Message disposition notifications are requested by including a 199 Disposition-Notification-To header field in the message containing 200 one or more addresses specifying where dispositions should be sent. 201 Further information to be used by the recipient's Mail User Agent 202 (MUA) [RFC5598] in generating the MDN may be provided by also 203 including Original-Recipient and/or Disposition-Notification-Options 204 header fields in the message. 206 2.1. The Disposition-Notification-To Header 208 A request for the receiving user agent to issue message disposition 209 notifications is made by placing a Disposition-Notification-To header 210 field into the message. The syntax of the header field is 212 mdn-request-header = "Disposition-Notification-To" ":" mailbox-list CRLF 214 A Disposition-Notification-To header field can appear at most once in 215 a message. 217 The presence of a Disposition-Notification-To header field in a 218 message is merely a request for an MDN. The recipients' user agents 219 are always free to silently ignore such a request. 221 An MDN MUST NOT itself have a Disposition-Notification-To header 222 field. An MDN MUST NOT be generated in response to an MDN. 224 A user agent MUST NOT issue more than one MDN on behalf of each 225 particular recipient. That is, once an MDN has been issued on behalf 226 of a recipient, no further MDNs may be issued on behalf of that 227 recipient by the same user agent, even if another disposition is 228 performed on the message. However, if a message is forwarded, an MDN 229 may have been issued for the recipient doing the forwarding and the 230 recipient of the forwarded message may also cause an MDN to be 231 generated. 233 It is also possible that if the same message is being accessed by 234 multiple user agents (for example using POP3), then multiple 235 dispositions might be generated for the same recipient. User agents 236 SHOULD leverage support in the underlying message access protocol to 237 prevent multiple MDNs from being generated. In particular, when the 238 user agent is accessing the message using RFC-IMAP [RFC3501], it 239 SHOULD implement the procedures specified in RFC-IMAP-MDN [RFC3503]. 241 While Internet standards normally do not specify the behavior of user 242 interfaces, it is strongly recommended that the user agent obtain the 243 user's consent before sending an MDN. This consent could be obtained 244 for each message through some sort of prompt or dialog box, or 245 globally through the user's setting of a preference. The purpose of 246 obtaining user's consent is to protect user's privacy. The default 247 value should be not to send MDNs. 249 MDNs MUST NOT be sent automatically if the address in the 250 Disposition-Notification-To header field differs from the address in 251 the Return-Path header field (see RFC-MSGFMT [RFC5322]). In this 252 case, confirmation from the user MUST be obtained, if possible. If 253 obtaining consent is not possible (e.g., because the user is not 254 online at the time or the client is not an interactive email client), 255 then an MDN MUST NOT be sent. 257 Confirmation from the user MUST be obtained (or no MDN sent) if there 258 is no Return-Path header field in the message, or if there is more 259 than one distinct address in the Disposition-Notification-To header 260 field. 262 The comparison of the addresses is done using only the addr-spec 263 (local-part "@" domain) portion, excluding any angle brackets, phrase 264 and route. As prescribed by RFC 5322, the comparison is case- 265 sensitive for the local-part and case-insensitive for the domain 266 part. The local-part comparison SHOULD be done after performing 267 local-part canonicalization (i.e. after removing the surrounding 268 double-quote characters, if any, as well as any escaping "\" 269 characters. (See RFC-MSGFMT [RFC5322] for more details.) 270 Implementations MAY treat known domain aliases as equivalent for the 271 purpose of comparison. 273 Note that use of subaddressing (see [RFC5233]) can result in a 274 failure to match two local-parts and thus result in possible 275 suppression of the MDN. This document doesn't recommend special 276 handling for this case, as the receiving MUA can't reliably know 277 whether or not the sender is using subaddressing. 279 If the message contains more than one Return-Path header field, the 280 implementation may pick one to use for the comparison, or treat the 281 situation as a failure of the comparison. 283 The reason for not automatically sending an MDN if the comparison 284 fails or more than one address is specified is to reduce the 285 possibility of mail loops and of MDNs being used for mail bombing. 287 It's especially important that a message that contains a Disposition- 288 Notification-To header field also contain a Message-ID header field, 289 to permit user agents to automatically correlate MDNs with their 290 original messages. 292 If the request for message disposition notifications for some 293 recipients and not others is desired, two copies of the message 294 should be sent, one with a Disposition-Notification-To header field 295 and one without. Many of the other header fields of the message 296 (e.g., To, Cc) will be the same in both copies. The recipients in 297 the respective message envelopes determine from whom message 298 disposition notifications are requested and from whom they are not. 299 If desired, the Message-ID header field may be the same in both 300 copies of the message. Note that there are other situations (e.g., 301 Bcc) in which it is necessary to send multiple copies of a message 302 with slightly different header fields. The combination of such 303 situations and the need to request MDNs for a subset of all 304 recipients may result in more than two copies of a message being 305 sent, some with a Disposition-Notification-To header field and some 306 without. 308 If it is possible to determine that a recipient is a newsgroup, do 309 not include a Disposition-Notification-To header field for that 310 recipient. Similarly, if an existing message is resent or gatewayed 311 to a newsgroup, the agent doing resending/gatewaying SHOULD strip the 312 Disposition-Notification-To header field. See Section 5 for more 313 discussion. Clients that see an otherwise valid Disposition- 314 Notification-To header field in a newsgroup message SHOULD NOT 315 generate an MDN. 317 2.2. The Disposition-Notification-Options Header 319 Extensions to this specification may require that information be 320 supplied to the recipient's MUA for additional control over how and 321 what MDNs are generated. The Disposition-Notification-Options header 322 field provides an extensible mechanism for such information. The 323 syntax of this header field is as follows: 325 Disposition-Notification-Options = 326 "Disposition-Notification-Options" ":" [FWS] 327 disposition-notification-parameter-list CRLF 329 disposition-notification-parameter-list = 330 disposition-notification-parameter 331 *([FWS] ";" [FWS] disposition-notification-parameter) 333 disposition-notification-parameter = attribute [FWS] "=" 334 [FWS] importance [FWS] "," [FWS] value *([FWS] "," [FWS] value) 336 importance = "required" / "optional" 338 attribute = atom 340 value = word 342 A Disposition-Notification-Options header field can appear at most 343 once in a message. 345 An importance of "required" indicates that interpretation of the 346 disposition-notification-parameter is necessary for proper generation 347 of an MDN in response to this request. An importance of "optional" 348 indicates that an MUA that does not understand the meaning of this 349 disposition-notification-parameter MAY generate an MDN in response 350 anyway, ignoring the value of the disposition-notification-parameter. 352 No disposition-notification-parameter attribute names are defined in 353 this specification. Attribute names may be defined in the future by 354 later revisions or extensions to this specification. disposition- 355 notification-parameter attribute names MUST be registered with the 356 Internet Assigned Numbers Authority (IANA) using "Specification 357 required" registration policy. The "X-" prefix has historically been 358 used to denote unregistered "experimental" protocol elements, that 359 are assumed not to become common use. Deployment experience of this 360 and other protocols have shown that this assumption is often false. 361 This document allows the use of the "X-" prefix primarily to allow 362 the registration of attributes that are already in common use. The 363 prefix has no meaning for new attributes. Its use in substantially 364 new attributes may cause confusion and is therefore discouraged. 365 (See Section 10 for a registration form.) 367 2.3. The Original-Recipient Header Field 369 Since electronic mail addresses may be rewritten while the message is 370 in transit, it is useful for the original recipient address to be 371 made available by the delivering Message Transfer Agent (MTA) 372 [RFC5598]. The delivering MTA may be able to obtain this information 373 from the ORCPT parameter of the SMTP RCPT TO command, as defined in 374 RFC-SMTP [RFC5321] and RFC-DSN-SMTP [RFC3461]. 376 RFC-DSN-SMTP [RFC3461] is amended as follows: If the ORCPT 377 information is available, the delivering MTA SHOULD insert an 378 Original-Recipient header field at the beginning of the message 379 (along with the Return-Path header field). The delivering MTA MAY 380 delete any other Original-Recipient header fields that occur in the 381 message. The syntax of this header field is as follows: 383 original-recipient-header = 384 "Original-Recipient" ":" OWS address-type OWS ";" OWS generic-address OWS 386 OWS = [CFWS] 387 ; Optional whitespace. 388 ; MDN generators SHOULD use "*WSP" 389 ; (typically a single space or nothing. 390 ; It SHOULD be nothing at the end of a field), 391 ; unless an RFC 5322 "comment" is required. 392 ; 393 ; MDN parsers MUST parse it as "[CFWS]". 395 The address-type and generic-address token are as specified in the 396 description of the Original-Recipient field in Section 3.2.3. 398 The purpose of carrying the original recipient information and 399 returning it in the MDN is to permit automatic correlation of MDNs 400 with the original message on a per-recipient basis. 402 2.4. Use with the Message/Partial Media Type 404 The use of the header fields Disposition-Notification-To, 405 Disposition-Notification-Options, and Original-Recipient with the 406 MIME message/partial content type (RFC-MIME-MEDIA [RFC2046]]) 407 requires further definition. 409 When a message is segmented into two or more message/partial 410 fragments, the three header fields mentioned in the above paragraph 411 SHOULD be placed in the "inner" or "enclosed" message (using the 412 terms of RFC-MIME-MEDIA [RFC2046]). If these header fields are found 413 in the header fields of any of the fragments, they are ignored. 415 When the multiple message/partial fragments are reassembled, the 416 following applies. If these header fields occur along with the other 417 header fields of a message/partial fragment message, they pertain to 418 an MDN that will be generated for the fragment. If these header 419 fields occur in the header fields of the "inner" or "enclosed" 420 message (using the terms of RFC-MIME-MEDIA [RFC2046]), they pertain 421 to an MDN that will be generated for the reassembled message. 422 Section 5.2.2.1 of RFC-MIME-MEDIA [RFC2046]) is amended to specify 423 that, in addition to the header fields specified there, the three 424 header fields described in this specification are to be appended, in 425 order, to the header fields of the reassembled message. Any 426 occurrences of the three header fields defined here in the header 427 fields of the initial enclosing message MUST NOT be copied to the 428 reassembled message. 430 3. Format of a Message Disposition Notification 432 A message disposition notification is a MIME message with a top-level 433 content-type of multipart/report (defined in RFC-REPORT [RFC6522]). 434 When multipart/report content is used to transmit an MDN: 436 a. The report-type parameter of the multipart/report content is 437 "disposition-notification". 439 b. The first component of the multipart/report contains a human- 440 readable explanation of the MDN, as described in RFC-REPORT 441 [RFC6522]. 443 c. The second component of the multipart/report is of content-type 444 message/disposition-notification, described in Section 3.1 of 445 this document, or message/global-disposition-notification, 446 described in Section 3.4 of this document. 448 d. If the original message or a portion of the message is to be 449 returned to the sender, it appears as the third component of the 450 multipart/report. The decision of whether or not to return the 451 message or part of the message is up to the MUA generating the 452 MDN. However, in the case of encrypted messages requesting MDNs, 453 encrypted message text MUST be returned, if it is returned at 454 all, only in its original encrypted form. 456 NOTE: For message disposition notifications gatewayed from foreign 457 systems, the header fields of the original message may not be 458 available. In this case, the third component of the MDN may be 459 omitted, or it may contain "simulated" RFC-MSGFMT [RFC5322] header 460 fields that contain equivalent information. In particular, it is 461 very desirable to preserve the subject and date fields from the 462 original message. 464 The MDN MUST be addressed (in both the message header field and the 465 transport envelope) to the address(es) from the Disposition- 466 Notification-To header field from the original message for which the 467 MDN is being generated. 469 The From header field of the MDN MUST contain the address of the 470 person for whom the message disposition notification is being issued. 472 The envelope sender address (i.e., SMTP "MAIL FROM") of the MDN MUST 473 be null (<>), specifying that no Delivery Status Notification 474 messages nor other messages indicating successful or unsuccessful 475 delivery are to be sent in response to an MDN. 477 A message disposition notification MUST NOT itself request an MDN. 478 That is, it MUST NOT contain a Disposition-Notification-To header 479 field. 481 The Message-ID header field (if present) for an MDN MUST be different 482 from the Message-ID of the message for which the MDN is being issued. 484 A particular MDN describes the disposition of exactly one message for 485 exactly one recipient. Multiple MDNs may be generated as a result of 486 one message submission, one per recipient. However, due to the 487 circumstances described in Section 2.1, it's possible that some of 488 the recipients for whom MDNs were requested will not generate MDNs. 490 3.1. The message/disposition-notification Media Type 492 The message/disposition-notification Media Type is defined as 493 follows: 495 Type name: message 497 Subtype name: disposition-notification 499 Required parameters: none 501 Optional parameters: none 503 Encoding considerations: "7bit" encoding is sufficient and MUST be 504 used to maintain readability when viewed by non- 505 MIME mail readers. 507 Security considerations: discussed in Section 6 of [RFCXXX]. 509 Interoperability considerations: none 511 Published specification: [RFCXXX] 513 Applications that use this media type: Mail Transfer Agents and 514 email clients that support multipart/report 515 generation and/or parsing. 517 Fragment identifier considerations: N/A 519 Additional information: 521 Deprecated alias names for this type: N/A 523 Magic number(s): none 525 File extension(s): .disposition-notification 527 Macintosh file type code(s): The 'TEXT' type 528 code is suggested as files of this type are 529 typically used for diagnostic purposes and 530 suitable for analysis in a text editor. A 531 uniform type identifier (UTI) of "public.utf8- 532 email-message-header" is suggested. This type 533 conforms to "public.plain-text". 535 Person & email address to contact for further information: See the 536 Authors' Addresses section of [RFCXXXX] 538 Intended usage: COMMON 540 Restrictions on usage: This media type contains textual data in the 541 US-ASCII charset, which is always 7-bit. 543 Author: See the Authors' Addresses section of [RFCXXXX] 545 Change controller: IETF 546 Provisional registration? no 548 (While the 7bit restriction applies to the message/disposition- 549 notification portion of the multipart/report content, it does not 550 apply to the optional third portion of the multipart/report content.) 552 The message/disposition-notification report type for use in the 553 multipart/report is "disposition-notification". 555 The body of a message/disposition-notification consists of one or 556 more "fields" formatted according to the ABNF of RFC-MSGFMT [RFC5322] 557 header "fields". The syntax of the message/disposition-notification 558 content is as follows: 560 disposition-notification-content = [ reporting-ua-field CRLF ] 561 [ mdn-gateway-field CRLF ] 562 [ original-recipient-field CRLF ] 563 final-recipient-field CRLF 564 [ original-message-id-field CRLF ] 565 disposition-field CRLF 566 *( failure-field CRLF ) 567 *( error-field CRLF ) 568 *( extension-field CRLF ) 570 extension-field = extension-field-name ":" *([FWS] text) 572 extension-field-name = field-name 574 Note that the order of the above fields is recommended, but not 575 fixed. Extension fields can appear anywhere. 577 3.1.1. General conventions for fields 579 Since these fields are defined according to the rules of RFC-MSGFMT 580 [RFC5322], the same conventions for continuation lines and comments 581 apply. Notification fields may be continued onto multiple lines by 582 beginning each additional line with a SPACE or HTAB. Text that 583 appears in parentheses is considered a comment and not part of the 584 contents of that notification field. Field names are case- 585 insensitive, so the names of notification fields may be spelled in 586 any combination of upper and lower case letters. [RFC5322] comments 587 in notification fields may use the "encoded-word" construct defined 588 in RFC-MIME-HEADER [RFC2047]. 590 3.1.2. "*-type" subfields 592 Several fields consist of a "-type" subfield, followed by a semi- 593 colon, followed by "*text". 594 For these fields, the keyword used in the address-type or MTA-type 595 subfield indicates the expected format of the address or MTA-name 596 that follows. 598 The "-type" subfields are defined as follows: 600 a. An "address-type" specifies the format of a mailbox address. For 601 example, Internet Mail addresses use the "rfc822" address-type. 602 Other values can appear in this field as specified in the 603 "Address Types" IANA subregistry established by RFC-DSN-FORMAT 604 [RFC3464]. 606 address-type = atom 608 atom = 610 b. An "MTA-name-type" specifies the format of a mail transfer agent 611 name. For example, for an SMTP server on an Internet host, the 612 MTA name is the domain name of that host, and the "dns" MTA-name- 613 type is used. Other values can appear in this field as specified 614 in the "MTA Name Types" IANA subregistry established by RFC-DSN- 615 FORMAT [RFC3464]. 617 mta-name-type = atom 619 Values for address-type and mta-name-type are case-insensitive. 620 Thus, address-type values of "RFC822" and "rfc822" are equivalent. 622 The Internet Assigned Numbers Authority (IANA) maintains a registry 623 of address-type and mta-name-type values, along with descriptions of 624 the meanings of each, or a reference to one or more specifications 625 that provide such descriptions. (The "rfc822" address-type is 626 defined in RFC-DSN-SMTP [RFC3461].) Registration forms for address- 627 type and mta-name-type appear in RFC-DSN-FORMAT [RFC3464]. 629 3.2. Message/disposition-notification Content Fields 631 3.2.1. The Reporting-UA field 632 reporting-ua-field = "Reporting-UA" ":" OWS ua-name OWS [ ";" OWS ua-product OWS ] 634 ua-name = *text-no-semi 636 ua-product = *([FWS] text) 638 text-no-semi = %d1-9 / ; "text" characters excluding NUL, CR, 639 %d11 / %d12 / %d14-58 / %d60-127 ; LF, or semi-colon 641 The Reporting-UA field is defined as follows: 643 An MDN describes the disposition of a message after it has been 644 delivered to a recipient. In all cases, the Reporting-UA is the MUA 645 that performed the disposition described in the MDN. This field is 646 optional, but recommended. For Internet Mail user agents, it is 647 recommended that this field contain both: the DNS name of the 648 particular instance of the MUA that generated the MDN, and the name 649 of the product. For example, 651 Reporting-UA: pc.example.com; Foomail 97.1 653 If the reporting MUA consists of more than one component (e.g., a 654 base program and plug-ins), this may be indicated by including a list 655 of product names. 657 3.2.2. The MDN-Gateway field 659 The MDN-Gateway field indicates the name of the gateway or MTA that 660 translated a foreign (non-Internet) message disposition notification 661 into this MDN. This field MUST appear in any MDN that was translated 662 by a gateway from a foreign system into MDN format, and MUST NOT 663 appear otherwise. 665 mdn-gateway-field = "MDN-Gateway" ":" OWS mta-name-type OWS ";" OWS mta-name OWS 667 mta-name = *text 669 For gateways into Internet Mail, the MTA-name-type will normally be 670 "dns", and the mta-name will be the Internet domain name of the 671 gateway. 673 3.2.3. Original-Recipient field 675 The Original-Recipient field indicates the original recipient address 676 as specified by the sender of the message for which the MDN is being 677 issued. For Internet Mail messages, the value of the Original- 678 Recipient field is obtained from the Original-Recipient header field 679 from the message for which the MDN is being generated. If there is 680 an Original-Recipient header field in the message, or if information 681 about the original recipient is reliably available some other way, 682 then the Original-Recipient field MUST be included. Otherwise, the 683 Original-Recipient field MUST NOT be included. If there is more than 684 one Original-Recipient header field in the message, the MUA may 685 choose the one to use, or act as if no Original-Recipient header 686 field is present. 688 original-recipient-field = 689 "Original-Recipient" ":" OWS address-type OWS ";" OWS generic-address OWS 691 generic-address = *text 693 The address-type field indicates the type of the original recipient 694 address. If the message originated within the Internet, the address- 695 type field will normally be "rfc822", and the address will be 696 according to the syntax specified in RFC-MSGFMT [RFC5322]. The value 697 "unknown" should be used if the Reporting MUA cannot determine the 698 type of the original recipient address from the message envelope. 699 This address is the same as that provided by the sender and can be 700 used to automatically correlate MDN reports with original messages on 701 a per recipient basis. 703 3.2.4. Final-Recipient field 705 The Final-Recipient field indicates the recipient for which the MDN 706 is being issued. This field MUST be present. 708 The syntax of the field is as follows: 710 final-recipient-field = 711 "Final-Recipient" ":" OWS address-type OWS ";" OWS generic-address OWS 713 The generic-address subfield of the Final-Recipient field MUST 714 contain the mailbox address of the recipient (from the From header 715 field of the MDN) as it was when the MDN was generated by the MUA. 717 The Final-Recipient address may differ from the address originally 718 provided by the sender, because it may have been transformed during 719 forwarding and gatewaying into a totally unrecognizable mess. 720 However, in the absence of the optional Original-Recipient field, the 721 Final-Recipient field and any returned content may be the only 722 information available with which to correlate the MDN with a 723 particular message recipient. 725 The address-type subfield indicates the type of address expected by 726 the reporting MTA in that context. Recipient addresses obtained via 727 SMTP will normally be of address-type "rfc822", but can be other 728 values from the "Address Types" subregistry of the "Delivery Status 729 Notification (DSN) Types" IANA registry. 731 Since mailbox addresses (including those used in the Internet) may be 732 case sensitive, the case of alphabetic characters in the address MUST 733 be preserved. 735 3.2.5. Original-Message-ID field 737 The Original-Message-ID field indicates the message-ID of the message 738 for which the MDN is being issued. It is obtained from the Message- 739 ID header field of the message for which the MDN is issued. This 740 field MUST be present if and only if the original message contained a 741 Message-ID header field. The syntax of the field is as follows: 743 original-message-id-field = 744 "Original-Message-ID" ":" msg-id 746 The msg-id token is as specified in RFC-MSGFMT [RFC5322]. 748 3.2.6. Disposition field 750 The Disposition field indicates the action performed by the 751 Reporting-MUA on behalf of the user. This field MUST be present. 753 The syntax for the Disposition field is: 755 disposition-field = 756 "Disposition" ":" OWS disposition-mode OWS ";" 757 OWS disposition-type 758 [ OWS "/" OWS disposition-modifier 759 *( OWS "," OWS disposition-modifier ) ] OWS 761 disposition-mode = action-mode OWS "/" OWS sending-mode 763 action-mode = "manual-action" / "automatic-action" 765 sending-mode = "MDN-sent-manually" / "MDN-sent-automatically" 767 disposition-type = "displayed" / "deleted" / "dispatched" / 768 "processed" 770 disposition-modifier = "error" / disposition-modifier-extension 772 disposition-modifier-extension = atom 773 The disposition-mode, disposition-type, and disposition-modifier 774 values may be spelled in any combination of upper and lower case US- 775 ASCII characters. 777 3.2.6.1. Disposition modes 779 Disposition mode consists of 2 parts: action mode and sending mode. 781 The following action modes are defined: 783 "manual-action" The disposition described by the disposition type 784 was a result of an explicit instruction by the 785 user rather than some sort of automatically 786 performed action. (This might include the case 787 when the user has manually configured her MUA to 788 automatically respond to valid MDN requests.) 789 Unless prescribed otherwise in a particular mail 790 environment, in order to preserve user's privacy, 791 this MUST be the default for MUAs. 793 "automatic-action" The disposition described by the disposition type 794 was a result of an automatic action, rather than 795 an explicit instruction by the user for this 796 message. This is typically generated by a Mail 797 Delivery Agent (e.g. MDN generations by Sieve 798 reject action [RFC5429], Fax-over-Email 799 [RFC3249], Voice Messaging System (VPIM) 800 [RFC3801] or upon delivery to a mailing list). 802 "Manual-action" and "automatic-action" are mutually exclusive. One 803 or the other MUST be specified. 805 The following sending modes are defined: 807 "MDN-sent-manually" The user explicitly gave permission for this 808 particular MDN to be sent. Unless prescribed 809 otherwise in a particular mail environment, in 810 order to preserve user's privacy, this MUST be 811 the default for MUAs. 813 "MDN-sent-automatically" The MDN was sent because the MUA had 814 previously been configured to do so 815 automatically. 817 "MDN-sent-manually" and "MDN-sent-automatically" are mutually 818 exclusive. One or the other MUST be specified. 820 3.2.6.2. Disposition types 822 The following disposition-types are defined: 824 "displayed" The message has been displayed by the MUA to 825 someone reading the recipient's mailbox. There 826 is no guarantee that the content has been read or 827 understood. 829 "dispatched" The message has been sent somewhere in some 830 manner (e.g., printed, faxed, forwarded) without 831 necessarily having been previously displayed to 832 the user. The user may or may not see the 833 message later. 835 "processed" The message has been processed in some manner 836 (i.e., by some sort of rules or server) without 837 being displayed to the user. The user may or may 838 not see the message later, or there may not even 839 be a human user associated with the mailbox. 841 "deleted" The message has been deleted. The recipient may 842 or may not have seen the message. The recipient 843 might "undelete" the message at a later time and 844 read the message. 846 3.2.6.3. Disposition modifiers 848 Only the extension disposition modifiers is defined: 850 disposition-modifier-extension 851 Disposition modifiers may be defined in the 852 future by later revisions or extensions to this 853 specification. MDN disposition value names MUST 854 be registered with the Internet Assigned Numbers 855 Authority (IANA) using "Specification required" 856 registration policy. (See Section 10 for a 857 registration form.) MDNs with disposition 858 modifier names not understood by the receiving 859 MUA MAY be silently ignored or placed in the 860 user's mailbox without special interpretation. 861 They MUST NOT cause any error message to be sent 862 to the sender of the MDN. 864 It is not required that an MUA be able to generate all of the 865 possible values of the Disposition field. 867 A user agent MUST NOT issue more than one MDN on behalf of each 868 particular recipient. That is, once an MDN has been issued on behalf 869 of a recipient, no further MDNs may be issued on behalf of that 870 recipient, even if another disposition is performed on the message. 871 However, if a message is forwarded, a "dispatched" MDN MAY be issued 872 for the recipient doing the forwarding and the recipient of the 873 forwarded message may also cause an MDN to be generated. 875 3.2.7. Error Field 877 The Error field is used to supply additional information in the form 878 of text messages when the "error" disposition modifier appear. The 879 syntax is as follows: 881 error-field = "Error" ":" *([FWS] text) 883 Note that syntax of these header fields doesn't include comments, so 884 "encoded-word" construct defined in RFC-MIME-HEADER [RFC2047] can't 885 be used to convey non ASCII text. Application that need to convey 886 non ASCII text in these fields should consider implementing message/ 887 global-disposition-notification media type specified in Section 3.4 888 of this specification. 890 3.3. Extension-fields 892 Additional MDN fields may be defined in the future by later revisions 893 or extensions to this specification. MDN field names MUST be 894 registered with the Internet Assigned Numbers Authority (IANA) using 895 "Specification required" registration policy. (See Section 10 for a 896 registration form.) MDN Extension-fields may be defined for the 897 following reasons: 899 a. To allow additional information from foreign disposition reports 900 to be tunneled through Internet MDNs. The names of such MDN 901 fields should begin with an indication of the foreign environment 902 name (e.g., X400-Physical-Forwarding-Address). 904 b. To allow transmission of diagnostic information that is specific 905 to a particular mail user agent (MUA). The names of such MDN 906 fields should begin with an indication of the MUA implementation 907 that produced the MDN (e.g., Foomail-information). 909 3.4. UTF-8 Message Disposition Notifications 911 When generating an MDN for a UTF-8 header message [RFC6532], the 912 third part of the multipart/report contains the returned content 913 (message/global) or header (message/global-headers), same as for DSNs 914 for UTF-8 header messages [RFC6533]. The second part of the 915 multipart/report uses a new media type, message/global-disposition- 916 notification, which has the syntax of message/disposition- 917 notification with two modifications. First, the charset for message/ 918 global-disposition-notification is UTF-8 [RFC3629], and thus any 919 field MAY contain UTF-8 characters when appropriate (see the ABNF 920 below). (In particular, the error-field and extension-field can 921 contain UTF-8. These fields SHOULD be in i-default language 922 [RFC2277].) Second, systems generating a message/global-disposition- 923 notification body part SHOULD use the UTF-8 address type [RFC6533] 924 for all addresses containing characters outside the ASCII repertoire. 926 Section 2.3 defined the Original-Recipient header field, which is 927 added with a copy of the contents of ORCPT at delivery time. When 928 generating an Original-Recipient header field, a delivery agent 929 writing a UTF-8 header message in native format SHOULD convert the 930 utf-8-addr-xtext or the utf-8-addr-unitext form of a UTF-8 address 931 type in the ORCPT parameter to the corresponding utf-8-address form. 933 Section 2.1 defined the Disposition-Notification-To header field, 934 which is an address header field and thus follows the same 8-bit 935 rules as other address header fields such as From and To when used in 936 a UTF-8 header message. 938 ; ABNF for "original-recipient-header", "original-recipient-field", 939 ; and "final-recipient-field" from RFC 3798bis is implicitly updated 940 ; as they use the updated "generic-address" as defined in 941 ; Section 4 of RFC 6533. 943 error-field = "Error" ":" *([FWS] utf8-text) 945 extension-field = extension-field-name ":" *([FWS] utf8-text) 947 utf8-text = text / UTF8-non-ascii 949 UTF8-non-ascii = UTF8-2 / UTF8-3 / UTF8-4 951 3.4.1. The message/global-disposition-notification Media Type 953 Type name: message 955 Subtype name: global-disposition-notification 957 Required parameters: none 959 Optional parameters: none 961 Encoding considerations: This media type contains disposition 962 notification attributes in the UTF-8 charset. The 8-bit content 963 transfer encoding MUST be used with this content-type, unless it 964 is sent over a 7-bit transport environment, in which case quoted- 965 printable or base64 may be necessary. 967 Security considerations: Discussed in Section 6 of [RFCXXX]. 969 Additionally, message/global-disposition-notification Media Type 970 permits UTF-8 in additional fields, the security considerations of 971 UTF-8 [RFC3629] apply. 973 Interoperability considerations: This media type provides 974 functionality similar to the message/disposition-notification 975 content-type for email message disposition information. Clients 976 of the previous format will need to be upgraded to interpret the 977 new format; however, the new media type makes it simple to 978 identify the difference. 980 Published specification: RFC XXXX 982 Applications that use this media type: Email clients or servers that 983 support message disposition notification generation or parsing. 985 Additional information: 987 Magic number(s): none 989 File extension(s): The extension ".u8mdn" is suggested. 991 Macintosh file type code(s): A uniform type identifier (UTI) of 992 "public.utf8-email-message-disposition-notification" is 993 suggested. This type conforms to "public.utf8-plain-text". 995 Person & email address to contact for further information: See the 996 Authors' Addresses section of this document. 998 Intended usage: COMMON 999 Restrictions on usage: This is expected to be the second part of a 1000 multipart/report. 1002 Author: See the Authors' Addresses section of this document. 1004 Change controller: IETF Standards Process 1006 4. Timeline of events 1008 The following timeline shows when various events in the processing of 1009 a message and generation of MDNs take place: 1011 -- User composes message 1013 -- User tells MUA to send message. 1015 -- MUA passes message to Mail Submission Agent (MSA), original 1016 recipient information passed along. 1018 -- MSA sends message to next MTA. 1020 -- Final MTA receives message. 1022 -- Final MTA delivers message to recipient's mailbox (possibly 1023 generating a Delivery Status Notification (DSN)). 1025 -- (Recipient's) MUA discovers a new message in recipient's mailbox 1026 and decides whether an MDN should be generated. If the MUA has 1027 information that an MDN has already been generated for this 1028 message, no further MDN processing described below is performed. 1029 If MUA decides that no MDN can be generated, no further MDN 1030 processing described below is performed. 1032 -- MUA performs automatic processing and might generate corresponding 1033 MDNs ("dispatched", "processed" or "deleted" disposition type with 1034 "automatic-action" and "MDN-sent-automatically" disposition 1035 modes). The MUA remembers that an MDN was generated. 1037 -- MUA displays list of messages to user. 1039 -- User selects a message and requests that some action be performed 1040 on it. 1042 -- MUA performs requested action; if an automatic MDN has not already 1043 been generated, with user's permission, sends an appropriate MDN 1044 ("displayed", "dispatched", "processed", or "deleted" disposition 1045 type, with "manual-action" and "MDN-sent-manually" or "MDN-sent- 1046 automatically" disposition mode). The MUA remembers that an MDN 1047 was generated. 1049 -- User possibly performs other actions on message, but no further 1050 MDNs are generated. 1052 5. Conformance and Usage Requirements 1054 An MUA or gateway conforms to this specification if it generates MDNs 1055 according to the protocol defined in this memo. It is not necessary 1056 to be able to generate all of the possible values of the Disposition 1057 field. 1059 MUAs and gateways MUST NOT generate the Original-Recipient field of 1060 an MDN unless the mail protocols provide the address originally 1061 specified by the sender at the time of submission. Ordinary SMTP 1062 does not make that guarantee, but the SMTP extension defined in RFC- 1063 DSN-SMTP [RFC3461] permits such information to be carried in the 1064 envelope if it is available. The Original-Recipient header field 1065 defined in this document provides a way for the MTA to pass the 1066 original recipient address to the MUA. 1068 Each sender-specified recipient address may result in more than one 1069 MDN. If an MDN is requested for a recipient that is forwarded to 1070 multiple recipients of an "alias" (as defined in RFC-DSN-SMTP 1071 [RFC3461], section 6.2.7.3), each of the recipients may issue an MDN. 1073 Successful distribution of a message to a mailing list exploder or 1074 gateway to Usenet newsgroup SHOULD be considered the final 1075 disposition of the message. A mailing list exploder MAY issue an MDN 1076 with a disposition type of "processed" and disposition modes of 1077 "automatic-action" and "MDN-sent-automatically" indicating that the 1078 message has been forwarded to the list. In this case, the request 1079 for MDNs is not propagated to the members of the list. 1081 Alternatively (if successful distribution of a message to a mailing 1082 list exploder/Usenet newsgroup is not considered the final 1083 disposition of the message), the mailing list exploder can issue no 1084 MDN and propagate the request for MDNs to all members of the list. 1086 The latter behavior is not recommended for any but small, closely 1087 knit lists, as it might cause large numbers of MDNs to be generated 1088 and may cause confidential subscribers to the list to be revealed. 1089 The mailing list exploder can also direct MDNs to itself, correlate 1090 them, and produce a report to the original sender of the message. 1092 This specification places no restrictions on the processing of MDNs 1093 received by user agents or mailing lists. 1095 6. Security Considerations 1097 Malicious users can generate report structures designed to trigger 1098 coding flaws in report parsers. Report parsers need to use secure 1099 coding techniques to avoid the risk of buffer overflow or denial-of- 1100 service attacks against parser coding mistakes. Code reviews of such 1101 parsers are also recommended. 1103 The following security considerations apply when using MDNs: 1105 6.1. Forgery 1107 MDNs can be (and are, in practice) forged as easily as ordinary 1108 Internet electronic mail. User agents and automatic mail handling 1109 facilities (such as mail distribution list exploders) that wish to 1110 make automatic use of MDNs should take appropriate precautions to 1111 minimize the potential damage from denial-of-service attacks. 1113 Security threats related to forged MDNs include the sending of: 1115 a. A falsified disposition notification when the indicated 1116 disposition of the message has not actually occurred, 1118 b. Unsolicited MDNs 1120 6.2. Privacy 1122 Another dimension of security is privacy. There may be cases in 1123 which a message recipient does not wish the disposition of messages 1124 addressed to him to be known, or is concerned that the sending of 1125 MDNs may reveal other sensitive information (e.g., when the message 1126 was read). In this situation, it is acceptable for the MUA to 1127 silently ignore requests for MDNs. 1129 If the Disposition-Notification-To header field is passed on 1130 unmodified when a message is distributed to the subscribers of a 1131 mailing list, the subscribers to the list may be revealed to the 1132 sender of the original message by the generation of MDNs. 1134 Headers of the original message returned in part 3 of the multipart/ 1135 report, as well as content of the message/disposition-notification 1136 part could reveal confidential information about host names and/or 1137 network topology inside a firewall. 1139 Disposition mode (Section 3.2.6.1) can leak information about 1140 recipient's MUA configuration, in particular whether MDNs are 1141 acknowledged manually or automatically. If this is a concern, MUAs 1142 can return "manual-action/MDN-sent-manually" disposition mode in 1143 generated MDNs. 1145 In general, any optional MDN field may be omitted if the Reporting 1146 MUA site or user determines that inclusion of the field would impose 1147 too great a compromise of site confidentiality. The need for such 1148 confidentiality must be balanced against the utility of the omitted 1149 information in MDNs. 1151 In some cases, someone with access to the message stream may use the 1152 MDN request mechanism to monitor the mail reading habits of a target. 1153 If the target is known to generate MDN reports, they could add a 1154 disposition-notification-to field containing the envelope from 1155 address. This risk can be minimized by not sending MDN's 1156 automatically. 1158 6.3. Non-Repudiation 1160 MDNs do not provide non-repudiation with proof of delivery. Within 1161 the framework of today's Internet Mail, the MDNs defined in this 1162 document provide valuable information to the mail user; however, MDNs 1163 cannot be relied upon as a guarantee that a message was or was not 1164 seen by the recipient. Even if MDNs are not actively forged, they 1165 may be lost in transit. The recipient may bypass the MDN issuing 1166 mechanism in some manner. 1168 One possible solution for this purpose can be found in RFC-SEC- 1169 SERVICES [RFC2634]. 1171 6.4. Mail Bombing 1173 The MDN request mechanism introduces an additional way of mailbombing 1174 a mailbox. The MDN request notification provides an address to which 1175 MDN's should be sent. It is possible for an attacking agent to send 1176 a potentially large set of messages to otherwise unsuspecting third 1177 party recipients with a false "disposition-notification-to:" address. 1178 Automatic, or simplistic processing of such requests would result in 1179 a flood of MDN notifications to the target of the attack. Such an 1180 attack could overrun the capacity of the targeted mailbox and deny 1181 service. 1183 For that reason, MDN's SHOULD NOT be sent automatically where the 1184 "disposition-notification-to:" address is different from the SMTP 1185 "MAIL FROM" address (which is carried in the Return-Path header 1186 field). See Section 2.1 for further discussion. 1188 7. Collected ABNF Grammar 1190 NOTE: The following lexical tokens are defined in RFC-MSGFMT 1191 [RFC5322]: CRLF, FWS, CFWS, field-name, mailbox-list, msg-id, text, 1192 comment, word. The following lexical tokens are defined in RFC-SMTP 1193 [RFC5321]: atom. (Note that RFC-MSGFMT [RFC5322] also defines 1194 "atom", but the version from RFC-SMTP [RFC5321] is more restrictive 1195 and this more restrictive version is used in this document.) 1196 "encoded-word" construct defined in RFC-MIME-HEADER [RFC2047] is 1197 allowed everywhere where RFC-MSGFMT [RFC5322] "comment" is used, for 1198 example in CFWS. 1200 OWS = [CFWS] 1201 ; Optional whitespace. 1202 ; MDN generators SHOULD use "*WSP" 1203 ; (typically a single space or nothing. 1204 ; It SHOULD be nothing at the end of a field), 1205 ; unless an RFC 5322 "comment" is required. 1206 ; 1207 ; MDN parsers MUST parse it as "[CFWS]". 1209 Message header fields: 1210 mdn-request-header = 1211 "Disposition-Notification-To" ":" mailbox-list CRLF 1213 Disposition-Notification-Options = 1214 "Disposition-Notification-Options" ":" [FWS] 1215 disposition-notification-parameter-list CRLF 1217 disposition-notification-parameter-list = 1218 disposition-notification-parameter 1219 *([FWS] ";" [FWS] disposition-notification-parameter) 1221 disposition-notification-parameter = attribute [FWS] "=" [FWS] 1222 importance [FWS] "," [FWS] value *([FWS] "," [FWS] value) 1224 importance = "required" / "optional" 1226 attribute = atom 1227 value = word 1229 original-recipient-header = 1230 "Original-Recipient" ":" OWS address-type OWS ";" OWS generic-address OWS CRLF 1232 Report content: 1233 disposition-notification-content = 1234 [ reporting-ua-field CRLF ] 1235 [ mdn-gateway-field CRLF ] 1236 [ original-recipient-field CRLF ] 1237 final-recipient-field CRLF 1238 [ original-message-id-field CRLF ] 1239 disposition-field CRLF 1240 *( failure-field CRLF ) 1241 *( error-field CRLF ) 1242 *( extension-field CRLF ) 1244 address-type = atom 1246 mta-name-type = atom 1248 reporting-ua-field = "Reporting-UA" ":" OWS ua-name OWS [ ";" OWS ua-product OWS ] 1250 ua-name = *text-no-semi 1252 ua-product = *([FWS] text) 1254 text-no-semi = %d1-9 / ; "text" characters excluding NUL, CR, 1255 %d11 / %d12 / %d14-58 / %d60-127 ; LF, or semi-colon 1257 mdn-gateway-field = "MDN-Gateway" ":" OWS mta-name-type OWS ";" OWS mta-name 1259 mta-name = *text 1261 original-recipient-field = 1262 "Original-Recipient" ":" OWS address-type OWS ";" OWS generic-address OWS 1264 generic-address = *text 1266 final-recipient-field = 1267 "Final-Recipient" ":" OWS address-type OWS ";" OWS generic-address OWS 1269 original-message-id-field = "Original-Message-ID" ":" msg-id 1271 disposition-field = 1272 "Disposition" ":" OWS disposition-mode OWS ";" 1273 OWS disposition-type 1274 [ OWS "/" OWS disposition-modifier 1275 *( OWS "," OWS disposition-modifier ) ] OWS 1277 disposition-mode = action-mode OWS "/" OWS sending-mode 1279 action-mode = "manual-action" / "automatic-action" 1281 sending-mode = "MDN-sent-manually" / "MDN-sent-automatically" 1283 disposition-type = "displayed" / "deleted" / "dispatched" / 1284 "processed" 1286 disposition-modifier = "error" / disposition-modifier-extension 1288 disposition-modifier-extension = atom 1290 error-field = "Error" ":" *([FWS] text) 1292 extension-field = extension-field-name ":" *([FWS] text) 1294 extension-field-name = field-name 1296 8. Guidelines for Gatewaying MDNs 1298 NOTE: This section provides non-binding recommendations for the 1299 construction of mail gateways that wish to provide semi-transparent 1300 disposition notifications between the Internet and another electronic 1301 mail system. Specific MDN gateway requirements for a particular pair 1302 of mail systems may be defined by other documents. 1304 8.1. Gatewaying from other mail systems to MDNs 1306 A mail gateway may issue an MDN to convey the contents of a "foreign" 1307 disposition notification over Internet Mail. When there are 1308 appropriate mappings from the foreign notification elements to MDN 1309 fields, the information may be transmitted in those MDN fields. 1310 Additional information (such as might be needed to tunnel the foreign 1311 notification through the Internet) may be defined in extension MDN 1312 fields. (Such fields should be given names that identify the foreign 1313 mail protocol, e.g., X400-* for X.400 protocol elements). 1315 The gateway must attempt to supply reasonable values for the 1316 Reporting-UA, Final-Recipient, and Disposition fields. These will 1317 normally be obtained by translating the values from the foreign 1318 notification into their Internet-style equivalents. However, some 1319 loss of information is to be expected. 1321 The sender-specified recipient address and the original message-id, 1322 if present in the foreign notification, should be preserved in the 1323 Original-Recipient and Original-Message-ID fields. 1325 The gateway should also attempt to preserve the "final" recipient 1326 address from the foreign system. Whenever possible, foreign protocol 1327 elements should be encoded as meaningful printable ASCII strings. 1329 For MDNs produced from foreign disposition notifications, the name of 1330 the gateway MUST appear in the MDN-Gateway field of the MDN. 1332 8.2. Gatewaying from MDNs to other mail systems 1334 It may be possible to gateway MDNs from the Internet into a foreign 1335 mail system. The primary purpose of such gatewaying is to convey 1336 disposition information in a form that is usable by the destination 1337 system. A secondary purpose is to allow "tunneling" of MDNs through 1338 foreign mail systems in case the MDN may be gatewayed back into the 1339 Internet. 1341 In general, the recipient of the MDN (i.e., the sender of the 1342 original message) will want to know, for each recipient: the closest 1343 available approximation to the original recipient address, and the 1344 disposition (displayed, printed, etc.). 1346 If possible, the gateway should attempt to preserve the Original- 1347 Recipient address and Original-Message-ID (if present) in the 1348 resulting foreign disposition report. 1350 If it is possible to tunnel an MDN through the destination 1351 environment, the gateway specification may define a means of 1352 preserving the MDN information in the disposition reports used by 1353 that environment. 1355 8.3. Gatewaying of MDN-requests to other mail systems 1357 By use of the separate disposition-notification-to request header 1358 field, this specification offers a richer functionality than most, if 1359 not all, other email systems. In most other email systems, the 1360 notification recipient is identical to the message sender as 1361 indicated in the "from" address. There are two interesting cases 1362 when gatewaying into such systems: 1364 1. If the address in the disposition-notification-to header field is 1365 identical to the address in the SMTP "MAIL FROM", the expected 1366 behavior will result, even if the disposition-notification-to 1367 information is lost. Systems should propagate the MDN request. 1369 2. If the address in the disposition-notification-to header field is 1370 different from the address in the SMTP "MAIL FROM", gatewaying 1371 into a foreign system without a separate notification address 1372 will result in unintended behavior. This is especially important 1373 when the message arrives via a mailing list expansion software 1374 that may specifically replace the SMTP "MAIL FROM" address with 1375 an alternate address. In such cases, the MDN request should not 1376 be gatewayed and should be silently dropped. This is consistent 1377 with other forms of non-support for MDN. 1379 9. Example 1381 NOTE: This example is provided as illustration only, and is not 1382 considered part of the MDN protocol specification. If the example 1383 conflicts with the protocol definition above, the example is wrong. 1385 Likewise, the use of *-type subfield names or extension fields in 1386 this example is not to be construed as a definition for those type 1387 names or extension fields. 1389 This is an MDN issued after a message has been displayed to the user 1390 of an Internet Mail user agent. 1392 Date: Wed, 20 Sep 1995 00:19:00 (EDT) -0400 1393 From: Joe Recipient 1394 Message-Id: <199509200019.12345@example.com> 1395 Subject: Disposition notification 1396 To: Jane Sender 1397 MIME-Version: 1.0 1398 Content-Type: multipart/report; report-type=disposition-notification; 1399 boundary="RAA14128.773615765/example.com" 1401 --RAA14128.773615765/example.com 1403 The message sent on 1995 Sep 19 at 13:30:00 (EDT) -0400 to Joe 1404 Recipient with subject "First draft of 1405 report" has been displayed. 1406 This is no guarantee that the message has been read or understood. 1408 --RAA14128.773615765/example.com 1409 content-type: message/disposition-notification 1411 Reporting-UA: joes-pc.cs.example.com; Foomail 97.1 1412 Original-Recipient: rfc822;Joe_Recipient@example.com 1413 Final-Recipient: rfc822;Joe_Recipient@example.com 1414 Original-Message-ID: <199509192301.23456@example.org> 1415 Disposition: manual-action/MDN-sent-manually; displayed 1417 --RAA14128.773615765/example.com 1418 content-type: message/rfc822 1420 [original message optionally goes here] 1422 --RAA14128.773615765/example.com-- 1424 10. IANA Considerations 1426 There are two actions for IANA: 1428 1. IANA is asked to update the registration template for the 1429 message/disposition-notification media type to the one in 1430 Section 3.1 of this document, and to update the reference for 1431 that media type to point to this document instead of to RFC 3798. 1433 2. IANA is asked to update the registration template for the 1434 message/global-disposition-notification media type to the one in 1435 Section 3.4.1 of this document, and to update the reference for 1436 that media type to point to this document instead of to RFC 6533. 1438 3. The registries specified here already exist, and this section is 1439 updating their documentation. IANA is asked to change the 1440 reference document for the three Message Disposition Notification 1441 Parameters registries to point to this document instead of to RFC 1442 3798. 1444 This document specifies three types of parameters that must be 1445 registered with the Internet Assigned Numbers Authority (IANA). All 1446 of them use [RFC5226] "Specification required" IANA registration 1447 policy. 1449 The forms below are for use when registering a new disposition- 1450 notification-parameter name for the Disposition-Notification-Options 1451 header field, a new disposition modifier name, or a new MDN extension 1452 field. Each piece of information required by a registration form may 1453 be satisfied either by providing the information on the form itself, 1454 or by including a reference to a published, publicly available 1455 specification that includes the necessary information. IANA MAY 1456 reject registrations because of incomplete registration forms or 1457 incomplete specifications. 1459 To register, complete the following applicable form and send it via 1460 electronic mail to . 1462 10.1. Disposition-Notification-Options header field disposition- 1463 notification-parameter names 1465 A registration for a Disposition-Notification-Options header field 1466 disposition-notification-parameter name MUST include the following 1467 information: 1469 a. The proposed disposition-notification-parameter name. 1471 b. The syntax for disposition-notification-parameter values, 1472 specified using BNF, ABNF, regular expressions, or other non- 1473 ambiguous language. 1475 c. If disposition-notification-parameter values are not composed 1476 entirely of graphic characters from the US-ASCII repertoire, a 1477 specification for how they are to be encoded as graphic US-ASCII 1478 characters in a Disposition-Notification-Options header field. 1480 d. A reference to a permanent and readily available public 1481 specification that describes the semantics of the disposition- 1482 notification-parameter values. 1484 10.2. Disposition modifier names 1486 A registration for a disposition-modifier name (used in the 1487 Disposition field of a message/disposition-notification) MUST include 1488 the following information: 1490 a. The proposed disposition-modifier name. 1492 b. A reference to a permanent and readily available public 1493 specification that describes the semantics of the disposition 1494 modifier. 1496 10.3. MDN extension field names 1498 A registration for an MDN extension-field name MUST include the 1499 following information: 1501 a. The proposed extension field name. 1503 b. The syntax for extension values, specified using BNF, ABNF, 1504 regular expressions, or other non-ambiguous language. 1506 c. If extension-field values are not composed entirely of graphic 1507 characters from the US-ASCII repertoire, a specification for how 1508 they are to be encoded as graphic US-ASCII characters in a 1509 Disposition-Notification-Options header field. 1511 d. A reference to a permanent and readily available public 1512 specification that describes the semantics of the extension 1513 field. 1515 11. Acknowledgements 1517 The contributions of Bruce Lilly, Alfred Hoenes, Barry Leiba, Ben 1518 Campbell and Pete Resnick are gratefully acknowledged for this 1519 revision. 1521 The contributions of Roger Fajman and Greg Vaudreuil to earlier 1522 versions of this document are also gratefully acknowledged. 1524 12. References 1526 12.1. Normative References 1528 [RFC5321] Klensin, J., "Simple Mail Transfer Protocol", RFC 5321, 1529 DOI 10.17487/RFC5321, October 2008, 1530 . 1532 [RFC5322] Resnick, P., Ed., "Internet Message Format", RFC 5322, 1533 DOI 10.17487/RFC5322, October 2008, 1534 . 1536 [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail 1537 Extensions (MIME) Part One: Format of Internet Message 1538 Bodies", RFC 2045, DOI 10.17487/RFC2045, November 1996, 1539 . 1541 [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail 1542 Extensions (MIME) Part Two: Media Types", RFC 2046, 1543 DOI 10.17487/RFC2046, November 1996, 1544 . 1546 [RFC2047] Moore, K., "MIME (Multipurpose Internet Mail Extensions) 1547 Part Three: Message Header Extensions for Non-ASCII Text", 1548 RFC 2047, DOI 10.17487/RFC2047, November 1996, 1549 . 1551 [RFC6522] Kucherawy, M., Ed., "The Multipart/Report Media Type for 1552 the Reporting of Mail System Administrative Messages", 1553 STD 73, RFC 6522, DOI 10.17487/RFC6522, January 2012, 1554 . 1556 [RFC3461] Moore, K., "Simple Mail Transfer Protocol (SMTP) Service 1557 Extension for Delivery Status Notifications (DSNs)", 1558 RFC 3461, DOI 10.17487/RFC3461, January 2003, 1559 . 1561 [RFC3464] Moore, K. and G. Vaudreuil, "An Extensible Message Format 1562 for Delivery Status Notifications", RFC 3464, 1563 DOI 10.17487/RFC3464, January 2003, 1564 . 1566 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1567 Requirement Levels", BCP 14, RFC 2119, 1568 DOI 10.17487/RFC2119, March 1997, 1569 . 1571 [RFC3503] Melnikov, A., "Message Disposition Notification (MDN) 1572 profile for Internet Message Access Protocol (IMAP)", 1573 RFC 3503, DOI 10.17487/RFC3503, March 2003, 1574 . 1576 [RFC6532] Yang, A., Steele, S., and N. Freed, "Internationalized 1577 Email Headers", RFC 6532, DOI 10.17487/RFC6532, February 1578 2012, . 1580 [RFC6533] Hansen, T., Ed., Newman, C., and A. Melnikov, 1581 "Internationalized Delivery Status and Disposition 1582 Notifications", RFC 6533, DOI 10.17487/RFC6533, February 1583 2012, . 1585 [RFC2277] Alvestrand, H., "IETF Policy on Character Sets and 1586 Languages", BCP 18, RFC 2277, DOI 10.17487/RFC2277, 1587 January 1998, . 1589 [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO 1590 10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November 1591 2003, . 1593 12.2. Informative References 1595 [RFC2634] Hoffman, P., Ed., "Enhanced Security Services for S/MIME", 1596 RFC 2634, DOI 10.17487/RFC2634, June 1999, 1597 . 1599 [RFC3249] Cancio, V., Moldovan, M., Tamura, H., and D. Wing, 1600 "Implementers Guide for Facsimile Using Internet Mail", 1601 RFC 3249, DOI 10.17487/RFC3249, September 2002, 1602 . 1604 [RFC3501] Crispin, M., "INTERNET MESSAGE ACCESS PROTOCOL - VERSION 1605 4rev1", RFC 3501, DOI 10.17487/RFC3501, March 2003, 1606 . 1608 [RFC3801] Vaudreuil, G. and G. Parsons, "Voice Profile for Internet 1609 Mail - version 2 (VPIMv2)", RFC 3801, 1610 DOI 10.17487/RFC3801, June 2004, 1611 . 1613 [RFC5233] Murchison, K., "Sieve Email Filtering: Subaddress 1614 Extension", RFC 5233, DOI 10.17487/RFC5233, January 2008, 1615 . 1617 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 1618 IANA Considerations Section in RFCs", BCP 26, RFC 5226, 1619 DOI 10.17487/RFC5226, May 2008, 1620 . 1622 [RFC5429] Stone, A., Ed., "Sieve Email Filtering: Reject and 1623 Extended Reject Extensions", RFC 5429, 1624 DOI 10.17487/RFC5429, March 2009, 1625 . 1627 [RFC5598] Crocker, D., "Internet Mail Architecture", RFC 5598, 1628 DOI 10.17487/RFC5598, July 2009, 1629 . 1631 Appendix A. Changes from RFC 3798 1633 Changed IANA registration for different subregistries to 1634 "Specification Required" to match what is already used by IANA. 1636 Updated IANA registration template for message/disposition- 1637 notification. 1639 "X-" fields no longer reserved for experimental use and can now be 1640 registered in compliance with RFC 6648. 1642 Fixed the default MTA-name-type used in "MDN-Gateway" to be "dns". 1644 Strengthen requirements on obtaining user consent in order to protect 1645 user privacy. 1647 Removed discussion of using source routes with MDNs, as source route 1648 is a deprecated Email feature. 1650 The values of "dispatched" and "processed" were lost from the ABNF 1651 for "disposition-type". (Erratum #691) 1653 Because the warning disposition modifier was previously removed, 1654 warning-field has also been removed. (Erratum #692) 1656 The ABNF for ua-name and ua-product included semi-colon, which could 1657 not be distinguished from *text in the production. The ua-name was 1658 restricted to not include semi-colon. Semi-colon can still appear in 1659 the ua-product. 1661 The ABNF did not indicate all places that whitespace was allowable, 1662 in particular folding whitespace, although all implementations allow 1663 whitespace and folding in the header fields just like any other 1664 RFC5322 [RFC5322]-formatted header field. There were also a number 1665 of places in the ABNF that inconsistently permitted comments and 1666 whitespace in one leg of the production and not another. The ABNF 1667 now specifies FWS and CFWS in several places that should have already 1668 been specified by the grammar. 1670 Extension-field was defined in the collected grammar but not in the 1671 main text. 1673 The comparison of mailboxes in Disposition-Notification-To to the 1674 Return-Path addr-spec was clarified. 1676 The use of the grammar production "parameter" was confusing with the 1677 RFC2045 [RFC2045] production of the same name, as well as other uses 1678 of the same term. These have been clarified. 1680 A clarification was added on the extent of the 7bit nature of MDNs. 1682 Uses of the terms "may" and "might" were clarified. 1684 A clarification was added on the order of the fields in the message/ 1685 disposition-notification content. 1687 Appendix B. Changes from RFC 6533 1689 Removed warning-field and failure-field to match changes done in 1690 3798bis. 1692 Updated ABNF for error-field to allow for line folding. (This 1693 matches a change in 3798bis) 1695 Clarified that extension-field can contain UTF-8. 1697 Authors' Addresses 1699 Tony Hansen (editor) 1700 AT&T Laboratories 1701 200 Laurel Ave. South 1702 Middletown, NJ 07748 1703 USA 1705 Email: tony@att.com 1706 Alexey Melnikov (editor) 1707 Isode Ltd 1708 14 Castle Mews 1709 Hampton, Middlesex TW12 2NP 1710 UK 1712 Email: Alexey.Melnikov@isode.com