Previous | Contents | Index |
If PMDF detects that a message is looping, that message will be
sidelined as a .HELD
file; see Section 33.4.7 for a
discussion. But certain cases can lead to message loops which PMDF can
not detect. Some of the more common cases include:
The first step in dealing with looping messages is to determine why the
messages are looping. Useful things to look at are a copy of the
problem message file while it is in the PMDF queue area, PMDF mail log
entries (if you have the logging
channel keyword enabled
in your PMDF configuration file for the channels in question) relating
to the problem message, and PMDF channel debug log files for the
channels in question. Determining the From: and To: addresses for the
problem message, seeing the Received: headers, and seeing the message
structure (type of encapsulation of the message contents), can all help
pinpoint which sort of message loop case you are encountering.
For case (1), note that mail systems such as PMDF require that the postmaster address be a functioning address that can receive e-mail. If a message to the postmaster is looping, check that your configuration has a proper postmaster address pointing to an account that can receive messages.
For case (2), note that normal detection of message loops is based on various Received: headers. If Received: headers are being stripped---either explicitly on the PMDF system itself, or more likely on some other system such as a firewall---that interferes with proper detection of message loops. There will likely be two issues to resolve: check that no undesired stripping of Received: headers is occurring so that if a loop does occur it can be short-circuited, and check for the underlying reason why the messages were looping. Possible underlying reasons for the occurrence of the message loop in the first place include: a problem in the assignment of system names or a system not configured to recognize a variant of its own name, a DNS problem, a lack of authoritative addressing information on the system(s) in question, or a user address forwarding error.
For case (3), note that Internet standards require that notification messages (reports of messages being delivered, or messages bouncing) have an empty envelope From: address to prevent message loops. However, some mail systems do not correctly handle such notification messages; such mail systems can, when forwarding or bouncing such a notification message, insert a new envelope From: address of their own. This can then lead to message loops. The solution is to fix the mail system that is incorrectly handling the notification messages.
Previous | Next | Contents | Index |