[Mimedefang] Syslog problem with Mimedefang 2.68 on FreeBSD
Mark Costlow
cheeks at swcp.com
Sat Sep 25 12:37:45 EDT 2010
I'm using Mimedefang 2.68 on FreeBSD 8.0. I just updated it from
2.67 and mimedefang wont start because of a problem with syslog.
First it bailed because I did not have Unix::Syslog or Sys::Syslog
installed. (2.67 worked without these). I installed Unix::Syslog.
Now the error I get is:
Slave 1 stderr: Usage: Unix::Syslog::LOG_FAC(p) at (eval 122) line 1.
Reap: slave 1 (pid 24105) exited normally with status 1 (SLAVE DIED UNEXPECTEDLY)
I've traced this as far as this code in sub _make_fac_map:
my $value = eval "Unix::Syslog::$constant()";
When $constant is "fac" this expression fails. It seems to succeed with
other names while it's building the map (emerg, alert, quit, err, etc...).
I haven't succeeded at building a test case for this outside of mimedefang.
I get perl errors when I try to invoke "Unix::Syslog::$constant()";
under any conditions I've tried.
In my mimedefang_filter md_syslog is invoked like so:
my_syslog("warning","loading hostmap from $hostmapfile and getting db handles.");
sub my_syslog(){
my($l,$i) = @_ ;
if ( exists &md_syslog ) {
md_syslog($l,"$i") ;
} else {
print "\[$$\] $l: $i\n";
}
}
If I remove the call to md_syslog() the filter runs, but I want to use
syslog :-)
2.68 is the version in the FreeBSD ports. I downloaded the newer versions
but didn't see any changes which looked related.
Any suggestions?
Thanks,
Mark
--
Mark Costlow | Southwest Cyberport | Fax: +1-505-232-7975
cheeks at swcp.com | Web: www.swcp.com | Voice: +1-505-232-7992
abq-strange.com -- Interesting photos taken in Albuquerque, NM
Last post: Shoe Pole - 2009-07-07 20:18:22
More information about the MIMEDefang
mailing list