This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Eric Lafontaine
Recipients Eric Lafontaine, Henning.von.Bargen, maciej.szulik, r.david.murray
Date 2017-01-18.01:56:10
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1484704572.71.0.798975397356.issue28879@psf.upfronthosting.co.za>
In-reply-to
Content
Hi all,

I've received an answer from the IETF Pete Resnick.  The answer does say however that there is no guaranteed way of getting the right headers if the message doesn't respect the standard; 

"[...] 
In this case, if the trace fields were not present, you would not be able to clearly distinguish. Certainly you know which blocks the Resent-Date and Resent-From belong to, and in this case you know which blocks the Resent-Message-ID belong to (since there are two of them and only two Resent-* blocks), and you know which block the Resent-Bcc belongs to (because it comes between the first Resent-Date and Resent-Message-ID), but you can't tell which block the Resent-To: belongs to. And if the either Resent-Message-ID was missing, you would be unable to tell where the Resent-Bcc or Resent-Message-ID belongs. This is simply a weakness in the standard.

However, the trace fields should exist, and that should divide the Resent-* blocks. As it says in 3.6:

header fields SHOULD NOT be reordered when a message is transported
or transformed. More importantly, the trace header fields and resent
header fields MUST NOT be reordered, and SHOULD be kept in blocks
prepended to the message.

I hope that helps.


pr
-- 
Pete Resnick http://www.qualcomm.com/~presnick/
Qualcomm Technologies, Inc. - +1 (858)651-4478
"
______________

In other words, if we were to take an e-mail that would have more than one Resent- headers, there should be traces in between the resent block.  If there are no traces for a Resent- block, and we can detect there are 2 blocks in what is supposed to be a block , we should raise an error.  

However, if we were to do the implementation and make it to detect "blocks" of resents (with the position of the resent for example).  We could use the first block as the one we should be using and see if there are 2 Resent-Dates or 2 Resent-From in that block only.

What do you think David?  I would like to know :).

P.s. I can forward the e-mail to does who want to have it :).

Regards,
Eric Lafontaine
History
Date User Action Args
2017-01-18 01:56:13Eric Lafontainesetrecipients: + Eric Lafontaine, r.david.murray, maciej.szulik, Henning.von.Bargen
2017-01-18 01:56:12Eric Lafontainesetmessageid: <1484704572.71.0.798975397356.issue28879@psf.upfronthosting.co.za>
2017-01-18 01:56:12Eric Lafontainelinkissue28879 messages
2017-01-18 01:56:10Eric Lafontainecreate