rfc-6009

Sieve Email Filtering: Delivery Status Notifications and Deliver-By Extensions

N. Freed
date2010-10 streamIETF areaapp wgsieve statusPROPOSED STANDARD pages15 canonicalhttps://www.rfc-editor.org/rfc/rfc6009 doi10.17487/RFC6009 errataview
This document describes the "envelope-dsn", "redirect-dsn", "envelope-deliverby", and "redirect-deliverby" extensions to the Sieve email filtering language. The "envelope-dsn" and "envelope- deliverby" extensions provide access to additional envelope information provided by the delivery status notification (DSN) and Deliver-By SMTP extensions, respectively. The "redirect-dsn" and "redirect-deliverby" extensions extend Sieve's redirect action to provide control over delivery status notification and Deliver-By parameters, respectively. [STANDARDS-TRACK]

Extracted elements (22)

design-rationale §6.1

Redirect-dsn and redirect-deliverby both require setting the envelope sender to the Sieve owner's address when their respective time/notification parameters are specified, because these extensions are not useful if the destination for delivery status notifications is unknown.

email

design-rationale §7

The ':bytimerelative' argument on redirect does not allow negative values because there is no use case for specifying a negative delivery time limit in this context, unlike the 'bytimerelative' envelope-part which may receive negative values from the transport layer.

email

interoperability-note §5

The Deliver-By by-time is decremented as a message passes through the transport infrastructure, so 'bytimerelative' values can be negative. Scripts must either perform additional checks or use a comparator capable of handling signed integers (i;ascii-numeric cannot handle negative values).

email

interoperability-note §5

The ':zone' argument for bytimeabsolute uses RFC 5322 time zone offset format ((+/-)4DIGIT), not ISO 8601 format. This distinction is important for implementors converting between formats.

email

normative-requirement §7 MUST

If the Deliver-By SMTP extension is unavailable, handling of a redirected message with redirect-deliverby arguments MUST conform to RFC 2852 Section 4.1.4 semantics for relaying to a server that does not support the Deliver-By extension.

email

normative-requirement §5 MUST

In the 'bytimeabsolute' value, the letters 'T' and 'Z' MUST be in upper case, and a time zone offset of zero MUST be represented by 'Z' and not '+00:00', per the restricted ISO 8601 format.

email

normative-requirement §4 MUST NOT

It is an error to specify an ADDRESS-PART argument in conjunction with the new envelope-part strings defined by envelope-dsn (notify, orcpt, ret, envid) or envelope-deliverby, as none of these have address syntax.

email

normative-requirement §7 MUST

It is an error to specify ':bymode' or ':bytrace' without either ':bytimeabsolute' or ':bytimerelative' in the redirect-deliverby extension.

email

normative-requirement §7.1 MUST

When either ':bytimeabsolute' or ':bytimerelative' is specified in redirect-deliverby and the envelope sender address is not empty, implementations MUST set the envelope sender address to the address of the Sieve owner.

email

normative-requirement §6.1 MUST

When either ':notify' or ':ret' is specified in redirect-dsn and the envelope sender address is not empty, implementations MUST set the envelope sender address to the address of the Sieve owner.

email

normative-requirement §6 MUST

When the DSN ESMTP extension is not available, the ':notify' and ':ret' arguments to redirect MUST be ignored and MUST NOT cause an error.

email

protocol-element §5

The 'envelope-deliverby' extension adds four envelope-part strings: 'bytimeabsolute' (BY parameter converted to restricted ISO 8601 format), 'bytimerelative' (raw BY integer value), 'bymode' ('notify' or 'return'), and 'bytrace' ('trace' or empty string), plus an optional ':zone' argument for time zone shifting of bytimeabsolute.

email

protocol-element §4

The 'envelope-dsn' extension adds four new envelope-part strings to the Sieve envelope test: 'notify' (DSN NOTIFY conditions), 'orcpt' (original recipient), 'ret' (return of content), and 'envid' (envelope identifier), corresponding to SMTP DSN extension parameters from RFC 3461.

email

protocol-element §4

The 'notify' envelope-part matches the list of notification conditions (NEVER, SUCCESS, FAILURE, DELAY) associated with the SMTP RCPT TO NOTIFY parameter. Each condition is tested separately, and any match causes the test to succeed; 'NEVER' is never combined with other values.

email

protocol-element §4

The 'orcpt' envelope-part matches the original recipient value from the SMTP RCPT TO ORCPT parameter with xtext encoding removed. It always contains an address type indicator prefix (e.g., 'rfc822;') in addition to the address.

email

protocol-element §7

The 'redirect-deliverby' extension adds ':bytimerelative', ':bytimeabsolute', ':bymode', and ':bytrace' arguments to the redirect action, constructing the BY ESMTP MAIL FROM parameter. ':bymode' and ':bytrace' require either ':bytimeabsolute' or ':bytimerelative' to also be specified.

email

protocol-element §6

The 'redirect-dsn' extension adds ':notify' and ':ret' arguments to the Sieve redirect action, setting the NOTIFY ESMTP RCPT TO and RET ESMTP MAIL FROM parameters respectively when the DSN ESMTP extension is available.

email

protocol-element §5

The ':zone' tagged argument for the envelope test specifies a time zone offset string in the format (+/-)4DIGIT (agreeing with RFC 5322 format, not ISO 8601). It only affects the 'bytimeabsolute' envelope-part; if omitted, local time zone is used.

email

registry §9

Four new Sieve extension capability names are registered with IANA: 'envelope-dsn', 'envelope-deliverby', 'redirect-dsn', and 'redirect-deliverby', all defined in RFC 6009.

email, registry

security-consideration §8

The envelope-dsn and envelope-deliverby extensions provide access to additional message envelope information but are not believed to raise security issues beyond those for the base Sieve 'envelope' test.

email, security

security-consideration §8

The redirect-deliverby extension controls how long the transport infrastructure attempts delivery, potentially generating additional notification messages. Although Deliver-By has a minimum by-time limit, sites may wish to impose additional minimum by-time limits on redirect actions.

email, security

security-consideration §8

The redirect-dsn extension allows specification of the NOTIFY parameter, which can cause generation of notification messages (especially success notifications) that might otherwise not be generated. Sites limiting success notification requests must also restrict their use via redirect-dsn.

email, security