[Avcheck] inclusion / exclusion of envelope recipients

Luke Dudney luke.dudney@westnet.com.au
Fri, 18 Jan 2002 11:10:13 +0800


> -----Original Message-----
> From: Michael Tokarev [mailto:mjt@tls.msk.ru]
> Sent: Wednesday, 9 January 2002 6:59 PM
> To: avcheck@list.corpit.ru
> Subject: Re: [Avcheck] inclusion / exclusion of envelope recipients

> I thought about this long before.  There is a possibility for this
> at avcheck side too.  Having a list of recipients and a map that
> lists all addresses that should be scanned, it is possible to
> derive two lists -- one that should be scanned and one that shouldn't.
> When scan a message if first list is non-empty, and:
> 
>  a) call infected handler and send mails to other addresses
>  b) send clean mail to all addresses
> 

I think this could work. (I will say again some of what you have already
said Michael, for the sake of clarity)

I propose the following
   add a command line argument to avcheck that lets you specify some sort of
map for inclusions (berkeley db is the obvious choice here, but flat text
would work for a small number of addresses)
   if no map is specified, avcheck runs as it currently does (scans all
addresses)

   take argv[] after getopt() (which is now the list of recipients) and
split it up into two lists, one to be scanned (call it "scan[]") and one not
to be scanned ("noscan[]")
   
   o  if scan[] is empty, run sendit() on noscan[] (which will be all
recipients)
   o  if noscan[] is empty, then do virus scanning / call infected on scan[]
(which will be all recipients)
   o  if both scan[] and noscan[] have at least one member, run sendit() on
noscan[] (but do not call cleanup() - we still need the message for scan[]'s
recipients ), then do virus scanning on the message.
         o  call "infected" script  if a virus is found, passing it scan[]
as its list of recipients.
         o  if no virus is found, run sendit() on scan[]


Does this sound feasible? Or have I just suggested exactly what you did?
I will start working on this myself in the mean time, anyway, to see how it
works.


Luke.
__________________________________________________
Luke Dudney
Systems Administrator
WestNet - WA's Statewide Internet Provider
Phone: 9218 2600 - Fax: 9218 2666
http://www.westnet.com.au
__________________________________________________