[Mimedefang] Slaves dying unexpectedly with signal 14

Roland Pope rpope at jadeworld.com
Wed Jan 18 04:34:24 EST 2006


----- Original Message ----- 
From: "Jan Pieter Cornet" <johnpc at xs4all.nl>
> I assume signal 14 is a SIGALRM. If "kill -l" on your system doesn't show
> "14) SIGALRM" in the output somewhere, then the below is invalid.

Yes 14 is SIGALRM

> If it's a perl module that uses alarm() and then fails to unset it,
> you might be able to trace it by inserting something like this (UNTESTED)
>
> use Carp qw(longmess);
> my $buzz;
> my $mess;
> *CORE::GLOBAL::alarm = sub {
>     my $arg = shift || $_;
>     CORE::alarm($arg);
>     if ( $arg == 0 ) {
> undef $buzz;
>     } else {
> $buzz = time + $arg;
> $mess = longmess;
>     }
> };
Thanks Jan for your response.
I inserted this code in near the start, and in the global section, of my
mimedefang-filter, and got the error:
<snip>
Jan 18 22:27:48 hosta mimedefang-multiplexor[6491]: Slave 5 stderr: Argument
" at /usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/Loc..." isn't numeric
in alarm at /etc/mail/mimedefang-filter line 95.
</snip>

When I added an 'md_syslog('info',"alarm=$arg");' right after the
'CORE::alarm($arg);' statement, I got:
<snip>
alarm= at /usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/Locker/Flock.pm
line 78       eval {...} called at
/usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/Locker/Flock.pm line 73
Mail::SpamAssassin::Locker::Flock::safe_lock('Mail::SpamAssassin::Locker::Fl
ock=HASH(0xb0617a0)','/home/cyrus/.spamassassin/auto-whitelist',30,640)
called at
/usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/DBBasedAddrList.pm line 72
Mail::SpamAssassin::DBBasedAddrList::new_checker('Mail::SpamAssassin::DBBase
dAddrList=HASH(0xc287378)','Mail::SpamAssassin=HASH(0x9fe2044)') called at
/usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/AutoWhitelist.pm line 95
Mail::SpamAssassin::AutoWhitelist::new('Mail::SpamAssassin::AutoWhitelist','
Mail::SpamAssassin=HASH(0x9fe2044)') called at
/usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/Plugin/AWL.pm line 352
eval {...} called at
/usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/Plugin/AWL.pm line 351
Mail::SpamAssassin::Plugin::AWL::check_from_in_auto_whitelist('Mail
</snip>

Any ideas what could be changed in your sample code to avoid this error?

Thanks
Roland




More information about the MIMEDefang mailing list