Dan,
I'm not certain if this has to do with "forwards" or not. I was just curious about DSN handling.
SPF classic specs specify "SMTP+SPF receivers MAY check the HELO argument and MUST check the return-path. A single SMTP transaction may therefore trigger one or two SPF queries."
That lead me to the question of how SpamFilter handle DSN's. Some DSN's have no return-path therefore in order to handle DSN's with blank return-paths SpamFilter would have to check the HELO argument. The goal is to identify the "responsible sender", if possible.
My opinion would be to follow the optional HELO argument in establishing the responsible sender.
This the section I am referring to in the SPF Classic spec ( http://spf.pobox.com/spf-draft-200406.txt" CLASS="ASPForums" TITLE="WARNING: URL created by poster. - http://spf.pobox.com/spf-draft-200406.txt" CLASS="ASPForums" TITLE="WARNING: URL created by poster. - http://spf.pobox.com/spf-draft-200406.txt ) :
"...
2.2.1 Subject of SPF testing
In an SMTP transaction, an SMTP client may provide FQDNs in the HELO argument and in the MAIL FROM return-path. SMTP+SPF receivers MAY check the HELO argument and MUST check the return-path. A single SMTP transaction may therefore trigger one or two SPF queries.
Accordingly, the <responsible-sender> may be drawn from the HELO argument or from the "MAIL FROM" return-path. This document sometimes refers to the <responsible-sender> as the "envelope sender".
It is RECOMMENDED that SMTP+SPF receivers perform tests using the following algorithm.
SMTP+SPF receivers MAY check the HELO argument. In this mode, the <responsible-sender> comes from the HELO argument IF the HELO argument is a fully qualified domain name. If the HELO argument is not an FQDN, there is nothing to check and the result is "unknown". If the HELO test returns a "fail", the overall result for the envelope is "fail", and there is no need to test the return-path.
SMTP+SPF receivers MUST check the return-path unless HELO testing produced a "fail". In this mode, the <responsible-sender> comes from the domain name of the "MAIL FROM" return-path. When the return-path has no domain, a client MUST use the HELO domain instead. If the HELO argument does not provide an FQDN, SPF processing terminates with "unknown".
If SPF processing occurs after SMTP time, the envelope sender may be obtained from the Return-Path header. If the Return-Path header has no domain, a client MAY try to extract the HELO domain from the Received headers. If the headers do not yield useful envelope information, SPF processing terminates with "unknown".
SMTP+SPF receivers MAY test the domain given in the HELO argument whether or not the return-path contains a domain name.
However, the <responsible-sender> address MAY be drawn from an alternative source. For example, an MUA may find it more convenient to extract the <responsible-sender> from the Return-Path header or from the Sender: header.
If the <responsible-sender> has no localpart, clients MUST substitute the string "postmaster" for the localpart.
The <current-domain> is initially drawn from the <responsible-sender>. Recursive mechanisms such as Include and Redirect replace the initial <current-domain> with another domain. However, they do not change the value of the <responsible-sender>. See sections 4.2, 3.3, and 8.4. ..."
|