ietf-dkim
[Top] [All Lists]

Re: [Fwd: Re: [ietf-dkim] canonicalized null body and dkim]

2006-12-19 12:21:49
Michael Thomas wrote:
Tony Hansen wrote:

That's why the issue was raised.

I firmly believe that we *intended* to canonicalize each of these
cases into the empty body

Well, that may or may not have been the intent, but the current spec
does say that and it's my claim that what the current spec is doing
is *useful* given the mangling that happens in the infrastructure.
That is, we're getting better pass rates when we implement the spec
as it is written now.

Ah, but several of us are convinced that the current spec does *not* say
that and we want a clarification added one way or the other.

There's no one disputing that the current spec isn't useful.

If I read your message correctly, your implementation implements
canonicalizing a body with nothing but CRLFs into an empty body. Or is
there a missing "not" in your statement and I'm wrong?

*My* implementation does so. Arvel's does so.

But another implementation I know of changes it into a CRLF. Sigh. So we
are NOT currently getting compatible implementations with the current
wording.

Back to intents: I believe the intent of the extra CRLF rule was to
handle transport modifications to the body that added an extra CRLF to
the end of the message. This was considered such a common modification
that we wanted to reduce the affects of it even in the simple
canonicalization mechanism.

Adding such an extra CRLF during transport could generate any of these
cases:

Last-header: foobarCRLF
CRLF

Last-header: foobarCRLF
CRLF
CRLF

Last-header: foobarCRLF
CRLF
CRLF
CRLF

and they MUST be treated identically because you can't tell which of
those CRLFs were original and which were added later.

So, I believe that the intent was: 1) to strip out all trailing CRLFs.
2) If there *is* body content other than those CRLFs, the last
non-CRLF-only line would be guaranteed to have a CRLF at its end.

And 3.4.3 needs to be adjusted to guarantee that intent.

        Tony Hansen
        tony(_at_)att(_dot_)com
_______________________________________________
NOTE WELL: This list operates according to 
http://mipassoc.org/dkim/ietf-list-rules.html

<Prev in Thread] Current Thread [Next in Thread>