[Mailman-Users] Updated view on Sendmail integration

Mark Sapiro mark at msapiro.net
Tue Dec 4 10:25:02 EST 2018


On 12/3/18 7:30 AM, Jim Ziobro wrote:
> 
> Another approach was mm-handler.Mm-handler handles the security bridge
> by calling back Mailman after it has switched to UID/GID:
> mailman/mailman.An elegant solution.The v3 version
> <http://sw.ziobro.info/mm-handler/>optionally allows mail not destined
> for a mailing list to be delivered locally.Thus mm-handler could be used
> to implement mailing lists in front of an existing mail domain.It looks
> like the mm-handler could be integrated into Postfix and probably other
> MTAs.


There's postfix_to_mailman.py. For our view of that, see
<https://wiki.list.org/x/15564817> and
<https://mail.python.org/pipermail/mailman-users/2012-September/074017.html>.


> Current distributions of Sendmail contain a file /etc/mail/make which is
> an appropriate place for such customization.The /etc/mail/make script
> gets executed every time Sendmail restarts.It is called once as “make
> aliases” and again as just “make” before Sendmail restarts.Instead of
> creating a shell script you could just edit the /etc/mail/make file so
> the makealiasesdb function reads:
> 
> makealiasesdb() {
> /usr/bin/cp /etc/mailman/aliases
> /etc/mail/mailman-aliases/usr/bin/newaliases > /dev/null
> }


OK. What's the problem with this?


> I started wondering where the interface between Mailman and MTA should
> be defined.For example if I am using MTA=’Manual’ then I could setup my
> /etc/mail/make as:
> 
> makealiasesdb() {
> 
> /usr/lib/mailman/bin/genaliases > /etc/mail/mailman-aliases
> 
> /usr/bin/newaliases > /dev/null
> 
> }
> 
> 
> But the ‘Manual’ mailer has no capability of signaling the MTA that the
> mailing lists have been updated.If I use MTA=’Postfix’ then genaliases
> has no output.Apparently the genaliases program is a function of the MTA
> setting.So I rolled my own aliases with a perl program:


with MTA = 'Postfix' both genaliases and list creation/deletion update
Mailman's data/aliases file and then run the command defined in
POSTFIX_ALIAS_CMD. This is how aliases are automatically maintained with
MTA = 'Postfix'.

If you want genaliases to write the aliases to stdout just set MTA =
'Manual' (the default)


<big snip>
> 
> This is where I am now.I cut and paste Python code but don’t necessarily
> understand it.If someone could give the Python code a look over then
> I’ll organize it a little better for a release.


At this point in the lifecycle of Mailman 2.1 I have no interest in
implementing a 'Sendmail' MTA for Mailman. The method for adapting MTA =
'Postfix' for automatic alias maintenance with sendmail is documented
and works.

Mailman3 does things differently. See
<https://mailman.readthedocs.io/en/latest/src/mailman/docs/mta.html>. We
are interested in help with Sendmail in this area.

-- 
Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan


More information about the Mailman-Users mailing list