// Hash Headers
hash = empty;
for each hdr in (dkim_h_list) do
s = mail_headers[hdr];
sz = dkim_z_list[hdr]; // see is copy is available
if (s != sz) {
WHAT? INVALID? Should they be the same?
What can cause this? Mailing list?
}
if (s == "") s = sz; // correction
if (s != "")
hash += hash_string(s)
else
WHAT? INVALID?
end for
This makes me nervous (assuming I'm understanding the pseudo-code).
It seems to say that if a header doesn't exist you use the header
from the z= tag. But since MUAs aren't going to see that, I think
it's problematic. Also, it doesn't address the "mailing list adds a
prefix" problem.
The z= tag is only supposed to be used for "diagnostic purposes", not
for computing the hash. Changing that would have major implications
that we would have to examine very carefully.
eric
_______________________________________________
NOTE WELL: This list operates according to
http://mipassoc.org/dkim/ietf-list-rules.html