Re: [Exim] Exim + virus-scanning

Top Page
Delete this message
Reply to this message
Author: Dave Temple
Date:  
To: Mike Weller
CC: exim-users
Subject: Re: [Exim] Exim + virus-scanning
Quoting Mike Weller <weller@???>:
> I currently run exim with amavis to scan for viruses. I also use
> mailman, a mailing list program. Here's the problem... whenever
> someone sends to a mailist list, it checks for viruses for each
> individual mailing list recipient. Even if I don't use mailman and I
> directly listed the recipients in a single e-mail, it will behave the
> same way. I want it to just check ONCE and then bypass the antivirus
> checking. I'm trying to figure out the easiest way to do this. Let
> me explain my setup.


Yes, the exim setup in the amavis documentation does indeed give you a setup
with this property. We use the perl version of amavis here, and I found the same
thing when I set it up. You can use the "batch_max" option in your amavis
transport to tell it it can deal with more than one recipient. Also, you can use
the variable ${pipe_addresses} to get the list of these recipients to feed into
amavis. We have as our amavis transport:-

amavis:
driver = pipe
batch = all
batch_max = 100
command = "/usr/sbin/amavis -f ${sender_address} -d ${pipe_addresses}"
prefix =
suffix =
check_string =
escape_string =
return_output = false
return_path_add = false
user = amavis
group = cc
path = "/bin:/sbin:/usr/bin:/usr/sbin"
current_directory = "/var/amavis"

It does indeed seem to work well, and does appear to scan messages once for up
to 100 recipients (if the message was a single message to start with). I just
picked the 100 figure out of the air because nobody could tell me how many
command line arguments my Linux system would be likely to accept (anyone know?).

Some old mailing list software already splits messages into multiple sends
though. We don't use mailman, but I suspect it isn't one of those as its pretty
up to date.

---

Dave Temple, Head of Network Services
Loughborough University Computing Services