The -d27.1 (a.k.a. -d27)
debugging switch causes sendmail to print each
step it takes when processing local addresses through aliasing.
First, sendmail prints the addresses being
aliased:
alias(addr)
Here, addr is the address (usually a local
username) that is about to be aliased. Note that it can already be
the result of previous aliasing. If the addr can
be aliased, its transformation is printed as:
addr (host, user) aliased to newaddr
Here, addr is the address before aliasing, and
the newaddr is the new address that resulted
from successful aliasing. The host and
user are the hostname and username from the
recipient part of the envelope. If the addr
cannot be aliased, nothing is printed.
During initialization, if the aliases database
cannot be opened, the -d27.1 debugging switch
causes sendmail to print:
Can't open aliasfile
Here, aliasfile is the full pathname of the
aliases(5) file, as declared by the
AliasFile option (Section 24.9) or
implied with the service-switch file set by the
ServiceSwitchFile option (ServiceSwitchFile).
If the failure was due to a faulty map declaration,
sendmail logs the following error:
setalias: unknown alias class dbtype
If the map is not allowed to provide alias services,
sendmail logs this error:
setalias: map class dbtype can't handle aliases
If sendmail is trying to create a database file
and it can't (usually when it is run with the
-bi command-line switch or run as
newaliases), the -d27.1
debugging switch causes the following error to be printed:
Can't create database for filename: reason here
A self-destructive alias can cause a dangerous loop to occur. For
example, the following two aliases can lead to a loop on the host
mailhost:
jake: Jake_Bair
Jake_Bair: jake@mailhost
The -d27.1 debugging switch causes the following
message to be printed when sendmail tests an
address to see whether it loops:
self_reference(addr)
... no self ref if it didn't loop
... cannot break loop for "addr"if it's unbreakable
An alias loop is unbreakable if no local username can be found in the
list of aliases.
The -d27.1 debugging switch also causes
sendmail to print a warning if it cannot open an
alias file for rebuilding (AutoRebuildAliases, the
AutoRebuildAliases option):
Can't open file: reason here
newaliases: cannot open file: reason here
Here, the error might be caused by the file
simply not existing (as would be the case if it was NFS-mounted on a
down host) or an I/O error (as would be the case if it was a bad
disk):
warning: cannot lock file: reason here
Failure to lock can be caused by system errors or by the
file being read-only. Note that maintaining an
aliases file under revision control can cause a
read-only copy to exist, resulting in the following error:
Can't create database for file: reason here
Cannot create database for alias file file
This error indicates that the output file (the
dbm(3) or db(3) file) could
not be created or written.
The -d27.1 debugging switch also causes
sendmail to print the following message when it
is attempting to read the user's
~/.forward file:
forward(user)
If the user has no home directory listed in the
passwd(5) file, sendmail
issues the following message with a syslog(3)
level of LOG_CRIT:
forward: no home