Rich Wales:
> My sending host does, in fact, have proper FCrDNS.
> 
> I've contacted AT&T in an attempt to get my IP address off their block
> list.  They haven't replied yet, and since I contacted them only
> yesterday, it's too early to tell if they are going to do it or not.
> 
> Distinguishing "block list" rejections (which I would want to retry via
> my smarthost) from other sorts of rejections (such as "no such user")
> could, I agree, be an issue.  In theory, I might want to try looking at
> the SMTP rejection notice and do a "retry via smarthost" for anything
> that did not contain one of a limited set of extended status codes
> (such as the 5.1.x codes).  I'm not sure if Postfix has any way of
> being told to do this sort of thing or not.

Postfix allows you to transform remote server responses into
arbitrary other responses. Thus, you can change a 5XX (hard 
reject) into something else.

http://www.postfix.org/postconf.5.html#smtp_reply_filter

        Wietse

smtp_reply_filter (default: empty)

    A mechanism to transform replies from remote SMTP servers one
    line at a time. This is a last-resort tool to work around server
    replies that break inter-operability with the Postfix SMTP
    client. Other uses involve fault injection to test Postfix's
    handling of invalid responses.

    Notes:

        * In the case of a multi-line reply, the Postfix SMTP client
          uses the final reply line's numerical SMTP reply code
          and enhanced status code.

        * The numerical SMTP reply code (XYZ) takes precedence over
          the enhanced status code (X.Y.Z). When the enhanced status
          code initial digit differs from the SMTP reply code
          initial digit, or when no enhanced status code is present,
          the Postfix SMTP client uses a generic enhanced status
          code (X.0.0) instead.

    Specify the name of a "type:table" lookup table. The search
    string is a single SMTP reply line as received from the remote
    SMTP server, except that the trailing <CR><LF> are removed.

    Examples:

    /etc/postfix/main.cf:
        smtp_reply_filter = pcre:/etc/postfix/reply_filter

    /etc/postfix/reply_filter:
        # Transform garbage into "250-filler..." so that it looks like
        # one line from a multi-line reply. It does not matter what we
        # substitute here as long it has the right syntax.  The Postfix
        # SMTP client will use the final line's numerical SMTP reply
        # code and enhanced status code.
        !/^([2-5][0-9][0-9]($|[- ]))/ 250-filler for garbage

    This feature is available in Postfix 2.7.

Reply via email to