[Mailman-Developers] Sender: header in 2.0beta1
Nigel Metheringham
Nigel.Metheringham@VData.co.uk
Thu, 23 Mar 2000 09:33:10 +0000
>>>>> "GM" == Gergely Madarasz <gorgo@caesar.elte.hu> writes:
GM> Actually I think that a wrong sender header is more acceptable
GM> than the increased possibility of mails getting lost... ;) The
GM> first problem can be easily noticed and fixed, while the
GM> second is not that easy to discover...
bwarsaw@cnri.reston.va.us said:
> True. Such lossage should at least get logged in logs/error, and I
> haven't in practice seen any problems on Python.Org, but you are right
> (as others have also pointed out). Some fallback mechanism should be
> implemented so that mail doesn't get lost when using SMTPDirect.
We have ended up with a nasty loop here - which means that using SMTP
injection I can't stop mail handling (or shut down) on a loaded
machine. If I kill the SMTP listener and queue runner, then messages
stop being injected into mailman, but any already launched mailman
instances will be hit by a brick wall as they try to hand off their
messages.
A little careful tampering with using an inject to queue only (ie no
direct injection into mailman) and a separate queue runner would allow
this to be sequenced right, as would some nasty hacks allowing
differential handling of smtp coming in from remote addresses and
localhost... but all of this is nasty hacking to get round the fact
that the MTA and mailman are in a deadly embrace and getting them out
of it without losing mail is difficult.
On that basis I think on my boxes I am going to have to look at
injection through the sendmail CLI which would allow me to kill the
smtp listener without mail lossage. The downside of that is it is a
harder hit in terms of process starting (at least for exim), error
handling is less good, and sendmail CLIs are notoriously strange.
One method that may be possible would be to write BSMTP wrapped
messages to a directory, and use a (very simple) forked program at the
end to feed them to the MTA on localhost, and if successful delete the
spooled BSMTP. A cron job could also pick up these spools every so
often and attempt to inject them.
Nigel.
--
[ - Opinions expressed are personal and may not be shared by VData - ]
[ Nigel Metheringham Nigel.Metheringham@VData.co.uk ]
[ Phone: +44 1423 850000 Fax +44 1423 858866 ]