Re: [exim-dev] SMTP PRDR

Top Page
Delete this message
Reply to this message
Author: Todd Lyons
Date:  
To: Jeremy Harris
CC: exim-dev
Subject: Re: [exim-dev] SMTP PRDR
On Tue, Feb 5, 2013 at 5:53 PM, Todd Lyons <tlyons@???> wrote:
> On Sun, Jan 27, 2013 at 6:31 AM, Jeremy Harris <jgh@???> wrote:
>> On 01/24/2013 09:31 PM, Jeremy Harris wrote:
>>>
>>> I'd like to merge a squashed
>>> version [of PRDR] back into the Exim mainline.
>> Now done.
>
> It's now built and running on m.lm.ivenue.com. It's jgh's prdr
> branch, which is not very far behind current master.
>
> [todd@tlyons ~/projects/exim_jgh (prdr)]$ git remote -v
> origin git://git.exim.org/users/jgh/exim.git (fetch)
> origin git://git.exim.org/users/jgh/exim.git (push)
>
> I still have to create some test users and rules to apply to them, but
> it's a live server and capable of testing (once I get the users
> created). There is at least one live (to the public internet) domain
> that I will be able to create these test users on.


Users are created and available for testing:
todd@???
todddefer@??? (will always be deferred)
toddreject@??? (do I have to describe it?)


I do have a question about behavior. Witness the following SMTP conversation:

[todd@tlyons ~]$ telnet m.lm.ivenue.com 25
Trying 208.89.138.62...
Connected to m.lm.ivenue.com.
Escape character is '^]'.
220-m.lm.ivenue.com, ESMTP Exim 4.81_RC1+libopendmarc, Wed, 06 Feb 2013
220 18:31:38 +0000
EHLO tlyons.ivenue.net
250-m.lm.ivenue.com Hello tlyons.ivenue.net [192.168.1.16]
250-SIZE 52428800
250-8BITMIME
250-ETRN
250-EXPN
250-AUTH PLAIN LOGIN
250-STARTTLS
250-PRDR
250 HELP
MAIL FROM:<todd@???> PRDR
250 OK, PRDR Requested
RCPT TO:<toddreject@???>
250 Accepted
RCPT TO:<todddefer@???>
250 Accepted
RCPT TO:<todd@???>
250 Accepted
DATA
354 Enter message, ending with "." on a line by itself
<snip valid message>
.
353 PRDR content analysis beginning
550 PRDR R=<toddreject@???> refusal
450 PRDR R=<todddefer@???> temporary refusal
250 PRDR R=<todd@???> acceptance
550 Detected dedicated spamware generated email
quit
221 m.lm.ivenue.com closing connection

It seems like the 250 PRDR response should not get issued until after
the message passes the actual DATA acl, no? You can't issue a 250 and
then turn around and reject it AFAIK.

...5 minutes later...

WRONG. According to the draft:

4.5.3. The Final Response Code

           After the server has transmitted all of the recipient-specific
           response lines, a final response that indicates whether or not
           the server will accept responsibility for the email message as
           a whole MUST be returned.j


So in this case, it is doing exactly as it is spec'd. My initial
trial shows that it works, for this narrow test case. Anybody else
from the outside want to test PRDR against my test server, go for it.
Give me some return mailboxes that I can use to test the client
implementation as well.

...Todd
--
The total budget at all receivers for solving senders' problems is $0.
If you want them to accept your mail and manage it the way you want,
send it the way the spec says to. --John Levine