Bug#408406: glibc malloc checker can abort deliver resulting in bounced mail
Libc version: 2.3.6.ds1-8
The deliver command fails infrequently producing the following log in
Jan 24 09:22:35 core postfix/local: 09C0836F28:
relay=local, delay=0.13, delays=0.04/0/0/0.09, dsn=5.3.0,
status=bounced (Command died with signal 6: "/usr/bin/deliver -
u /etc/deliver/default.user dave".
Command output: *** glibc detected *** free(): invalid pointer:
0xb7f51d14 *** )
In the last 69000 deliveries I see 220 of these failures. The users
on this system all use the same deliver file...
if cat $HEADER | grep -q 'X-Bogosity: *Yes' ;then
[ -d ~/Mail ] || mkdir ~/Mail
A fix, short of finding what is probably a doubly freed or
uninitialized pointer would
be to disable the suicidal error enforcement recently added in glibc.
I think a putenv("MALLOC_CHECK_",0) as the first thing in the program
this, though I haven't tried and there seems to be some dispute on
the web if the last "_"
should be there, the debian man page suggests it should.