OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
From: Amos Gouaux (+archive.postfix-usersutdallas.edu)
Date: Wed Jun 13 2001 - 12:45:50 CDT

  • Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

    >>>>> On Thu, 7 Jun 2001 21:13:45 -0400 (EDT),
    >>>>> Wietse Venema <wietseporcupine.org> (wv) writes:

    wv> I have a mail sitting in my queue with the following status:
    wv> 0B62DBC06D 65060 Thu Jun 7 03:18:46 wietseporcupine.org
    wv> (host mx.port.ru[194.67.23.33] said: 552 <XXXXXmail.ru> Message
    wv> will exceed maximum mailbox size)
    wv> XXXXXmail.ru

    wv> With older Postfix versions the mail would be returned to the sender
    wv> immediately.

    By immediately, do you mean a 5XX error? This was just with the
    smtp client, correct?

    $ pwd
    /usr/soft/that/postfix-20010228-pl01/src/orig/src/smtpd
    $ grep 452 *.c
    smtpd.c: smtpd_chat_reply(state, "452 Error: too many recipients");
    smtpd_check.c: "452 Insufficient system storage");

    wv> With Postfix snapshot 20010525, Postfix tries to deliver the mail
    wv> again and again until the message is returned as "too old".

    wv> Has Wietse gone out of his mind? Not to worry.

    wv> The new behavior is specified by RFC 2821. Section 4.5.3.1 of RFC
    wv> 2821 says that a 552 RCPT TO reply must be treated as if the server
    wv> replied with 452.

    wv> In RFC 821, a 552 RCPT TO reply could mean one of the following:

    wv> 552 too many recipients

    wv> 552 too much mail data

    But that's not what you've been doing, at least with smtpd. For
    both, smtpd has been returning 452. I've got the reports that our
    Exchange 2000 server has been repeatedly trying to send a message
    with 18K recipients to prove it:

     In: RCPT TO:<something1a.b.c>
     Out: 452 Error: too many recipients
     In: RCPT TO:<something2a.b.c>
     Out: 452 Error: too many recipients
     In: RCPT TO:<something3a.b.c>
     Out: 452 Error: too many recipients
     Out: 421 Error: too many errors

    Session aborted, reason: too many errors

    wv> RFC 2821 acknowledges that the first example is an error in RFC
    wv> 821. I have never heard of this actually happening in real life.

    Neither have I, until this past weekend. :-(

    wv> RFC 2821 requires that a 552 RCPT TO reply is to be treated as a
    wv> 452 RCPT TO reply (i.e. Postfix will keep sending the same message
    wv> again and again, and it will always be too large).

    What about receiving? When reading the sections on 'too many
    recipient's in 821 and 2821, I didn't see a distinction between
    client (smtp) and server (smtpd).

    wv> Now, as far as I can remember, the old Postfix behavior never caused
    wv> trouble, so I am going to make a second violation of RFC 2821 for
    wv> the sake of sanity.

    So you're violating it (sort of[1]) for the smtp client, but not the
    smtpd server. Seems like that's going to cause more confusion
    because of the inconsistency.

    Notes:

    1. Actually, 2821 does state:

       If the server has a configured site-policy limitation on the
       number of RCPT commands, it MAY instead use a 5XX response code.
       This would be most appropriate if the policy limitation was intended
       to apply if the total recipient count for a particular message body
       were enforced even if that message body was sent in multiple mail
       transactions.

    So, at least as the 'too many recipients' are involved, it seems
    that this indicates it is indeed valid to send a 5XX response.
    I'm not arguing against that, just stating that the 552 for 'too
    many recipients' should apply to BOTH smtp and smtpd, perhaps with a
    configurable setting.

    -- 
    Amos
    

    - To unsubscribe, send mail to majordomopostfix.org with content (not subject): unsubscribe postfix-users