I recently rebuilt my sendmail config file and started noticing the following errors in my /etc/maillog.
- “No local mailer defined”
- “QueueDirectory (Q) option must be set”
- “sendmail.cf line 1: invalid argument to V line: ERSIONID(@#)openbsd”
I searched for some time in Google but was unsuccessful locating how to resolve these problems. So I went to IRC Freenode in the channel #sendmail and ask for help. Cannonball suggested I add “include(`/usr/share/sendmail/m4/cf.m4′)dnl” to my config file without quotes. I added it in on the 3rd line (excluding comments). I rebuilt my config with “m4 openbsd-localhost.mc > /etc/mail/sendmail.cf”. Then killed the service sendmail (kill -HUP PID) and restarted sendmial. All the error messages disappeared. Thanks cannonball for helping out, much appreciated.
Here’s my sendmail mc file which is /usr/share/sendmail/cf/openbsd-localhost.mc with the added include line and define statement for smart_host.
divert(-1)
#
# Copyright (c) 1998 Sendmail, Inc. All rights reserved.
# Copyright (c) 1983 Eric P. Allman. All rights reserved.
# Copyright (c) 1988, 1993
# The Regents of the University of California. All rights reserved.
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the sendmail distribution.
#
# This configuration only runs sendmail on the localhost interface.
# This allows mail on the local host to work without accepting
# connections from the net at large.
#
divert(0)dnl
include(`/usr/share/sendmail/m4/cf.m4')dnl
VERSIONID(`@(#)openbsd-localhost-smarthost.mc $Revision: 1.4 $')
OSTYPE(openbsd)dnl
FEATURE(nouucp, `reject')dnl
FEATURE(`accept_unresolvable_domains')dnl
FEATURE(`no_default_msa')dnl
define(`SMART_HOST',`10.10.8.1')dnl
MAILER(local)dnl
MAILER(smtp)dnl
DAEMON_OPTIONS(`Family=inet, address=127.0.0.1, Name=MTA')dnl
DAEMON_OPTIONS(`Family=inet6, address=::1, Name=MTA6, M=O')dnl
DAEMON_OPTIONS(`Family=inet, address=127.0.0.1, Port=587, Name=MSA, M=E')dnl
DAEMON_OPTIONS(`Family=inet6, address=::1, Port=587, Name=MSA6, M=O, M=E')dnl
CLIENT_OPTIONS(`Family=inet6, Address=::')dnl
CLIENT_OPTIONS(`Family=inet, Address=0.0.0.0')dnl
dnl
dnl Some broken nameservers will return SERVFAIL (a temporary failure)
dnl on T_AAAA (IPv6) lookups.
define(`confBIND_OPTS', `WorkAroundBrokenAAAA')dnl