[Top] [All Lists]

Re: "reject" and SMTP

2007-07-14 19:17:51

On Sat, 2007-07-14 at 21:22 +0200, Dilyan Palauzov wrote:
I have a question concerning section 3.1.1 (Rejecting messages at the 
SMTP/LMTP protocol level ) of draft-ietf-sieve-refuse-reject-04:

Imagine a mail envelope is sent to more than one recipients, one of 
which accepts the mail, and the other makes sieve's refuse:

[protocol snippet below]

What shall the server answer, when 1(_at_)example(_dot_)org accepts the 
message and 
2(_at_)example(_dot_)org does not (=makes sieve's refuse)?


Following the end of the DATA command, there is a response for each
recipient, per this modification to SMTP by RFC 2033:

4.2.  The DATA command

   In the LMTP protocol, there is one additional restriction placed on
   the DATA command, and one change to how replies to the final "." are

   The additional restriction is that when there have been no successful
   RCPT commands in the mail transaction, the DATA command MUST fail
   with a 503 reply code.

   The change is that after the final ".", the server returns one reply
   for each previously successful RCPT command in the mail transaction,
   in the order that the RCPT commands were issued.  Even if there were
   multiple successful RCPT commands giving the same forward-path, there
   must be one reply for each successful RCPT command.

So let's say that 1(_at_)example(_dot_)org accepts the message while 
rejects it. I would imagine that your example would conclude like this:

C: mail from: 1(_at_)example(_dot_)com
S: 2.1.0 1(_at_)example(_dot_)com(_dot_)(_dot_)(_dot_) Sender ok
C: rcpt to: 1(_at_)example(_dot_)org
S: 2.1.5 1(_at_)example(_dot_)org(_dot_)(_dot_)(_dot_) Recipient ok
C: rcpt to: 1(_at_)example(_dot_)org
S: 2.1.5 2(_at_)example(_dot_)org(_dot_)(_dot_)(_dot_) Recipient ok
C: That's all
C: .
S: 250 OK
S: 215 Recipient <1(_at_)example(_dot_)org> OK
S: 571 Recipient <2(_at_)example(_dot_)org> Delivery not authorized, message
S: 221 BYE

I don't know how you'd do this in SMTP since there is only one response
to the DATA command regardless of how many RCPT TO's were given.


<Prev in Thread] Current Thread [Next in Thread>