[Mimedefang] mimedefang-multiplexor crash
Marcus Schopen
lists at localguru.de
Fri Sep 2 08:23:00 EDT 2011
Hi Ghislain,
Am Donnerstag, den 01.09.2011, 23:51 +0200 schrieb Kees Theunissen:
> On Thu, 1 Sep 2011, Ghislain wrote:
>
> >hi,
> >
> > i have from time to time a mimedefang-multiplexor crash. The
> >mimedefang process is still here but mimedefang-multiplexor is down.
> >Each time we have a :
> >
> > kernel: mimedefang[10760]: segfault at 130 ip 00007faef285c900 sp
> >0000000042c200f0 error 4 in libmilter.so.1.0.1[7faef2851000+f000]
> >
> >(debian lenny 64 bits)
> >
> > I wonder how we could debug this and have an automatic way to restart
> >the system when it triggers. The startup script of debian does not have
> >a "status" command i could use for this and using a dumb "mimedefang
> >start" do not work as it see the mimedefang process and think that all
> >is ok and not down so it does not start. Of course a restart could not
> >be used as if it work then restarting will kill performances especialy
> >every 30 minutes ^^.
> >
> >
> > Any idea on how to prevent this ?
>
> As I wrote in my other reply in this thread I think this is the bug
> reported at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=527862 .
> Message #47 in that thread mentions a patch that can be downloaded
> from http://j-chkmail.ensmp.fr/libmilter .
> The "debian-lenny/" directory at that site contains patched libmilter
> debian packages for "Lenny".
I built these debian packages with Jose-Marcio's patch last year and
since then my milters are running rock stable. The debian packages is
only 32bit. For building the patch on your own:
1.
install the following helper packages:
aptitude install debhelper fakeroot m4 cdbs patchutils dh-buildinfo
groff libdb4.6-dev libldap2-dev libwrap0-dev liblockfile-dev
libsasl2-dev libssl-dev procmail
2.
download sendmail latest package source package:
aptitude source sendmail
3.
download workes.c.patch from
http://www.j-chkmail.org/download/libmilter/libmilter-workers-8.14.3-1.tgz
and modify the frist two lines to let the package builder find the
patch:
--- sendmail-8.14.3/libmilter/worker.c 2007-12-03 23:06:05.000000000
+0100
+++ ./debian/patches/8.14/8.14.3/worker.c.patch 2009-06-15
09:46:29.000000000 +0200
4.
copy workes.c.patch to sendmail-8.14.3/debian/patches/8.14/8.14.3
5.
modify sendmail-8.14.3/debian/changelog, e.g.:
--------
sendmail (8.14.3-5+lenny1.localguru.0) stable-security; urgency=high
* Fixed segfault in libmilter (Closes: #527862)
-- Marcus Schopen <marcus at localguru.de> Sat, 06 Mar 2010 02:07:11
+0100
--------
6.
rebuild the sendmail package
dpkg-buildpackage
7.
install the new libmilter package:
dpkg -i libmilter1.0.1-dbg_8.14.3-5+lenny1.localguru.0_i386.deb
The filename suffix "localguru.0" depends on your changes in
debian/changelog
8.
restart sendmail and your filters
> I didn't test/use those packages as I'm running Debian Squeeze.
>
>
> A quick and dirty workaround is inspecting the mail-logs and restarting
> mimedefang in case of errors.
> Something like:
>
> tail -n100 /var/log/mail.log | \
> grep -q 'Milter (mimedefang): to error state' && \
> /etc/init.d/mimedefang restart
>
> frequently run by cron should do the job (not jet tested).
> The regular expression in the grep command is based on my logs after
> the last crash a few weeks ago.
Check monit for watchdog functionality.
Ciao
Marcus
More information about the MIMEDefang
mailing list