Re: delivered-to format (was: Re: Fwd: New Version Notification for draft-crocker-email-deliveredto-05.txt)

Viktor Dukhovni <[email protected]> Mon, 9 Aug 2021 11:37:53 -0400
Newsgroups gmane.ietf.smtp
Message-ID <[email protected]>
On Mon, Aug 09, 2021 at 07:45:34AM -0700, Dave Crocker wrote:

> What I've observed from this latest review is:
> 
>       1.  In all cases, the Delivered-To field contains a string that is
>           in the form of an email address; that is: Mailbox (from RFC
>           5321)

* The message might never have been transfered via SMTP in the first place.
* The address in question is placed in a message header, rather than used
  in an SMTP command.

Therefore, Postfix uses an RFC*22 encoding, addr-spec per:

    https://datatracker.ietf.org/doc/html/rfc5322#section-3.4.1

but, IIRC Jeremy reported that when misconfigured by the operator,
Exim can emit an address-list per:

    https://datatracker.ietf.org/doc/html/rfc5322#section-3.4

>       2.  The strings regularly appeared to be the same as was in the
>           SMTP RCPT TO command

This is rather site-dependent.  For some systems this is always the
case, for others never the case, and there also cases where this depends
on the particular recipient.

>       3.  Sometimes they had an alternative semantic, per the references
>           to an 'internal' form

This is not a different semantic, the address in Delivered-To is always
the output envelope recipient to which the message is delivered, rather
than the input envelope recipient that triggered the delivery.

In many (though perhaps not most) cases the address conveyed by the MTA
to the LDA is not equal to the input SMTP "RCPT TO" (or, more generally
the input envelope recipient address, when SMTP was not how the message
came in).

>       4.  These internal forms appear to be a variant of the address that
>           was in the RCPT TO command

They are not "variants" they are derived from the input envelope
recipient address, but can be any combination of:

    * A change in the domain part to effect a routing change.

    * A change in the local part to map from a First.Last or
      similar public identifier to a user account identifier, ...

    * An individual recipient of an email addressed to a group
      mailbox (a list alias).

    * Replace the local part with some LDA-private loop-detection token

-- 
    Viktor.