start page | rating of books | rating of authors | reviews | copyrights

Previous Section Next Section

MaxHopCount

Set maximum hop count All versions

A hop is the transmittal of a mail message from one machine to another.[37] Many hops might be required to deliver a message. The number of hops is determined by counting the Received:, Via:, X400-Received, and Mail-From: lines in the header of an email message.[38]

[37] The IP transport protocol also has the concept of hops. A message going from one machine to another has only one mail hop but can have many IP hops.

[38] Actually, any header that is marked with an H_TRACE flag (Section 25.6.17) is counted.

The MaxHopCount option tells sendmail the maximum number of times a message can be forwarded. When sendmail receives a message via email, it calculates the hop count. If that count is above the maximum allowed, it bounces the message back to the sender with the error:

sendmail: too many hops (17 max)

In this case, 17 is the maximum. Detecting too many hops is useful in stopping mail loops�messages being forwarded back and forth between two machines.

The forms of the MaxHopCount option are as follows:

O MaxHopCount=hops        configuration file (V8.7 and later) 
-OMaxHopCount=hops        command line (V8.7 and later) 
define(`confMAX_HOP',hops)    mc configuration (V8.7 and later) 
Ohhops                    configuration file (deprecated) 
-ohhops                   command line (deprecated) 

The hops argument is of type numeric. If hops is missing, the value becomes zero and causes all mail to fail with the error:

sendmail: too many hops (0 max)

If the entire MaxHopCount option is missing, hops defaults to 25. A good value is 50 or more (RFC2821, Section 6.2, suggests 100). This allows mail to follow a fairly long route through many machines (as it could with UUCP) but still catches and bounces mail caught in a loop between two machines.

The MaxHopCount option should not be confused with the -h command-line switch (-h). The MaxHopCount option specifies the maximum number of hops allowed, whereas the -h command-line switch presets the (beginning) hop count for a given email message.

The MaxHopCount option is not safe. If specified from the command line, it can cause sendmail to relinquish its special privileges.

    Previous Section Next Section