To quote from the RFC.
Implementations SHOULD take measures to implement loop control,
possibly including adding headers to the message or counting received
headers. If an implementation detects a loop, it causes an error.
What sort of error should this cause? Should a message be generated back to
the sender saying that a mail loop was detected? It would appear in the
current Cyrus 1.6.24 implementation, mails are silently deleted on loop
detection. Should there be an explicit definiton of how this sort of error
should be handled Eg. DSN?