Philip Gladstone wrote:
I think that smtp-receiver-hostname ought to be renamed to smtp-sender-helo
I think that's a better name... or did I mess up and put the wrong
comment. Maybe it should be the hostname of the host computer?
I would like to include the argument to the mechanism (before any macro
expansion).
That was my intent... according to section 3.2 in the same document:
mechanism = 1*ALPHA [ ':' *VCHAR ] *[ '/' *DIGIT ]
Which MUST include the argument exactly as found in the SPF record.
Maybe that should be specified more precicely.
Actually it will cause the argument to appear as if it was the next
':'-delimited field in line after the mechanism name.
I think that the whole best_guess thing is a bit of a nightmare -- I
wouldn't want to mention it in the RFC. Otherwise there will be endless
discussions about the precise set of values, yadda yadda yadda.
Good point, but I think it still SHOULD be included in the comment field
if a best_guess is used instead of a real SPF query.
We probably also ought to take trhe opportunity to make the header
compatible with other SMTP headers in terms of LWSP. It appears (from a
quick look at 2822) that the BNF doesn't mention the WS after the colon
anyway.
Yeah, I saw that and didn't know what to make of it. Is 2822 saying
that I'm not supposed to have a space after the colon? If so, then does
every header value technically include the leading space?
(That would be weird. Instead of having a mail client do this:
Subject: [From your friend________________________]
it should instead properly do this:
Subject: [ From your friend_______________________]
Or is it somehow just implied by common practice?
I think that comment-string probably ought to be 'ccontent' from rfc2822.
Hmmm... I don't think so, as 'ccontent' looks like it has to include
parentheses or have no spaces in it whatsoever. Maybe I'm wrong, but I
expect these two examples are valid 'ccontent':
This_is_a_ccontent_string-as-spaces-are-not-valid-in-a-ctext
( This is also a ccontent string each-those-words-is-a-ccontent
and it may include "FWS" but is forced to use parantheses \af
-The-[backslash]af is an allowed quoted-pair (and nesting is
allowed))
And this is not:
This is invalid because spaces are not part of ctext and we are not
within paretheses.
This would mean that a properly formatted Received-SPF header would have
to look like either this:
Received-SPF: pass
(helo.host.name:address(_at_)host(_dot_)name:127.0.0.1:ptr:domain.com:This_is_a_comment)
Or this:
Received-SPF: pass
(helo.host.name:address(_at_)host(_dot_)name:127.0.0.1:ptr:domain.com:(This
is a comment))
And I think the nested parentheses look funny. Note that since we are
already within paretheses it is also compliant with 2822 (and probably
more correct than using VCHAR) to change comment-string to:
comment-string = *([FWS] ccontent) [FWS]
Definitely a move in the right direction.
Thanks! I hope some of it helps out :)
My updated definition (Probably both the smtp-receiver-hostname and
envelope-sender should be better defined than just 1*VCHAR, as should
IPV4Address and IPV6Address):
header = 'Received-SPF:' result [ FWS '(' comment ')' ] CRLF
FWS = [*WSP CRLF] 1*WSP
result = 'pass' / 'fail' / 'error' / 'unknown'
/ unknown-declarations
unknown-declarations = 'unknown' *( FWS declaration )
comment = smtp-receiver-hostname ':' envelope-sender ':' current-domain
':' match-mechanism [ ':' comment-string ]
smtp-receiver-hostname = 1*VCHAR
;hostname of the SMTP server
envelope-sender = 1*VCHAR
;reverse-path given by SMTP client at MAIL FROM command
current-domain = IPV4Address / IPV6Address
;IP address of current SMTP client
match-mechanism = mechanism / 'none'
;mechanism format specified in section 3.2
;MUST be the mechanism (and argument) record checked which was
; matched to cause the result, copied exactly from the actual
; SPF record.
;MUST be 'none' if no match was made for any reason
; (ie, error, no SPF information given)
comment-string = *( [FWS] ccontent ) [FWS]
;ccontent is defined in RFC 2822 section 3.2.3
;SHOULD include further information not already provided
; (ie, description of error message in the case of errors)
;SHOULD mention if the "best_guess" function is used
;MAY include a human-readable explanation of why the current result
; was decided
;MAY in the future include other "important" information such as SPF
; version number, or additional colon-delimited information
--
Jim Ramsay
-------
Sender Permitted From: http://spf.pobox.com/
Archives at http://archives.listbox.com/spf-discuss/current/
Latest draft at http://spf.pobox.com/draft-mengwong-spf-02.9.4.txt
To unsubscribe, change your address, or temporarily deactivate your subscription,
please go to http://v2.listbox.com/member/?listname(_at_)©#«Mo\¯HÝÜîU;±¤Ö¤Íµø?¡