home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  


Previous Section Next Section

EX_TEMPFAIL

A recoverable error sendmail exit value

The EX_TEMPFAIL exit code (value 75) is returned by sendmail to indicate that a temporary error has occurred. Temporary errors mean that the mail message will be put in (or remain in) the queue for the present, and another delivery attempt will be made later.

One example of this type of error occurs in looking up aliases via a network service, such as NIS. If all the servers are too busy to answer before a timeout, sendmail should temporarily queue the message and look up the aliases again later:

alias database unavailable

Another example occurs when there is a failure to open a file descriptor as a file pointer with fdopen(3). This can happen when caching an SMTP connection:

cannot open SMTP client channel, fd=file descriptor

In looking up hostnames with DNS, the name server or the network might be so overloaded that the lookup will time out:

host: Name server timeout

DNS lookups can also be caused by dial-on-demand networks when the connection is not fast enough. If the delivery mode of sendmail is set by the DeliveryMode option (DeliveryMode) to defer, that failed connection is deemed temporary.

Normally, delivery agents exit because they have finished delivering the email. If one exits because of a received signal, sendmail logs the following message and the fork(2)'d child exits with an EX_TEMPFAIL exit code:

mailer delivery agent name died with signal signal in octal

Also, if the -X command-line switch (Section 14.2) was used to specify a transcript file, the arguments to the delivery agent will be recorded in that file.

    Previous Section Next Section