Trace fuzzy matching Debug command-line switch

Fuzzy matching is the attempt to match a local recipient name to one of the names in the GECOS field of the passwd(5) file (or NIS map). The -d29.4 debugging switch causes the process of fuzzy matching to be traced:


Here, name is an address in the form of a local user address, without the host part. The name is first looked up in the passwd(5) file on the assumption that it is a login name. If it is found, sendmail prints:

found (non-fuzzy)

If sendmail was compiled with hesiod support, all numeric login names will not work properly, resulting in the following:

failed (numeric input)

If the name is looked up and not found, the entire passwd(5) is searched to see whether name appears in any of the GECOS fields. This search is done only if MATCHGECOS (MATCHGECOS on page 120) was defined when sendmail was compiled and if the MatchGECOS option (MatchGECOS on page 1043) is true. If MATCHGECOS was undefined, the search ends and the not-found name causes the mail to bounce. If the MatchGECOS option is false, sendmail bounces the message and prints the following:

not found (fuzzy disabled)

If the MatchGECOS option is true, the GECOS fields are searched. But before the search starts, any underscore characters (and the character defined by the BlankSub option, BlankSub on page 980) that appear in name are converted to spaces. Then, in turn, each GECOS field has the full name extracted (everything following the first comma, semicolon, ...

Get sendmail, 4th Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.