[Mimedefang] Any point in using File::Scan as well as clamav?
Peter Campion-Bye
peter at pandasys.co.uk
Tue Aug 5 05:30:01 EDT 2003
> Thanks for that. I've got it working, but I had to change
> message_contains_virus... ()
> to
> entity_contains_virus... ($e)
> in the second sub.
Do you mean you changed:
sub entity_contains_virus ($) {
to:
sub entity_contains_virus ($e) {
?
If I do that, 'mimedefang.pl -test' gives me the error:
Not enough arguments for main::entity_contains_virus at
/etc/mail/mimedefang-filter line 224, near "$entity)" Compilation failed
in require at /usr/local/bin/mimedefang.pl line 4023.
Here's my code again, could someone who's a Perl programmer validate it
please? I'm a C++ programmer, I'm not very familiar with Perl syntax.
Thanks
# Scan for a virus using all installed scanners, stop on the first
positive sub message_contains_virus () {
my($code, $cat, $act);
($code, $cat, $act) = message_contains_virus_filescan();
return (wantarray ? ($code, $cat, $act) : $code) if ($act ne "ok");
($code, $cat, $act) = message_contains_virus_clamd();
return (wantarray ? ($code, $cat, $act) : $code) if ($act ne "ok");
return (wantarray ? (0, 'ok', 'ok') : 0);
}
sub entity_contains_virus ($) {
my($e) = @_;
my($code, $cat, $act);
($code, $cat, $act) = message_contains_virus_filescan();
return (wantarray ? ($code, $cat, $act) : $code) if ($act ne "ok");
($code, $cat, $act) = message_contains_virus_clamd();
return (wantarray ? ($code, $cat, $act) : $code) if ($act ne "ok");
return (wantarray ? (0, 'ok', 'ok') : 0);
}
More information about the MIMEDefang
mailing list