On Sun, 2008-08-10, Pete Resnick wrote:

> Your claims about 5xz return codes in 4.2.5 of 2821bis bring up an 
> interesting interpretation. 4.2.5 also says:

>     When an SMTP server returns a positive completion status (2yz code)
>     after the DATA command is completed with <CRLF>.<CRLF>, it accepts
>     responsibility for:

>     o  delivering the message (if the recipient mailbox exists) , or

Note the use of the singular here: "the recipient mailbox". This could be
an example of imprecise wording surrounding the handling of multi-recipient
messages or perhaps an implied "FORALL Recipients...".

I have been bothered by this imprecision since I first read 821, but I
assumed that the concensus had been that common sense would discover the
"obvious intent".

>     o  if attempts to deliver the message fail due to transient
>        conditions, retrying delivery some reasonable number of times at
>        intervals as specified in Section 4.5.4.

>     o  if attempts to deliver the message fail due to permanent
>        conditions, or if repeated attempts to deliver the message fail
>        due to transient conditions, returning appropriate notification to
>        the sender of the original message (using the address in the SMTP
>        MAIL command).

> Take the following example:

>        S: 220 foo.com Simple Mail Transfer Service Ready
>        C: EHLO bar.com
>        S: 250-foo.com greets bar.com
>        S: 250-VRFY
>        S: 250 HELP
>        C: VRFY [EMAIL PROTECTED]
>        S: 250 <[EMAIL PROTECTED]>
>        C: MAIL FROM:<[EMAIL PROTECTED]>
>        S: 250 OK
>        C: VRFY [EMAIL PROTECTED]
>        S: 250 <[EMAIL PROTECTED]>
>        C: RCPT TO:<[EMAIL PROTECTED]>
>        S: 450 Can't send  to him right now
>        C: DATA
>        S: 354 Start mail input; end with <CRLF>.<CRLF>
>        C: Blah blah blah...
>        C: ...etc. etc. etc.
>        C: .
>        S: 250 OK
>        C: QUIT
>        S: 221 foo.com Service closing transmission channel

> According to 4.2.5 above, since [EMAIL PROTECTED] exists, and foo.com 
> (the server) has sent back a 250 to the DATA command, foo.com (the 
> server) now has responsibility for delivering the message to 
> [EMAIL PROTECTED] (retrying if necessary) and bar.com (the client) SHOULD 
> NOT attempt to retry delivery to [EMAIL PROTECTED] Is this the correct 
> interpretation?

I believe that, not withstanding the VRFY, the "450 Can't send to him right
now" means that Jones is NOT a recipient of the message in THIS
transaction. Thus, the server should probably have responded to "DATA" with
"554 No recipients given"

-- 
Bill McQuillan <[EMAIL PROTECTED]>

Reply via email to