Subject: Re: F'up: /etc/rc.d/sendmail weirdness: more info
To: Andrew Brown <atatat@atatdot.net>
From: Frederick Bruckman <fredb@immanent.net>
List: current-users
Date: 08/29/2004 13:06:57
In article <20040827224920.A9604@noc.untraceable.net>,
	atatat@atatdot.net (Andrew Brown) writes:
> 
> (1) just use makemap.  the extra @ @ entry may have bad side-effects.
> 
> (2) this is sendmail 8.12.x, with the separated mta and submission
> instances.  be mindful of this and reread this paragraph from
> /usr/share/sendmail/README:
> 
>       Notice: if you use an MSP (as it is default starting with
>       8.12), the MTA will only receive qualified addresses from the
>       MSP (as required by the RFCs).  Hence you need to add your
>       domain to class {G}.
> 
> which translates to adding this line to your mc file:
> 
>       GENERICS_DOMAIN(`$j')dnl
> 
> or this line to your cf file (if you've lost your mc file):
> 
>       C{G}$j

Don't lose your MC file: keep it in "/etc/mail". I think it's been
suggested, before, to install an "/etc/mail/Makefile" to make rebuilding
the databases and sendmail.cf a no-brainer. Here's mine in it's entirety:
 

M4=	/usr/bin/m4

.PHONY: all

all: access.db aliases.db genericstable.db mailertable.db virtusertable.db sendmail.cf submit.cf

access.db: access
	makemap hash ${.ALLSRC} < ${.ALLSRC}

aliases.db: aliases
	newaliases

genericstable.db: genericstable
	makemap hash ${.ALLSRC} < ${.ALLSRC}

mailertable.db: mailertable
	makemap hash ${.ALLSRC} < ${.ALLSRC}

virtusertable.db: virtusertable
	makemap hash ${.ALLSRC} < ${.ALLSRC}

sendmail.cf: MAIL.IMMANENT.NET.mc
	cp -p sendmail.cf sendmail.cf.old
	${M4} ${.ALLSRC} > sendmail.cf

submit.cf: SUBMIT.mc
	cp -p submit.cf submit.cf.old
	${M4} ${.ALLSRC} > submit.cf


Season to taste. Note, you have to add


define(`_CF_DIR_', `/usr/share/sendmail/')
include(`/usr/share/sendmail/m4/cf.m4')


to the top of your MC file to permit it to build anywhere, as the
default is to take "_CF_DIR_" as the current working directory.


-- 
Frederick