avcache - speed up anti-viruses

Recent news

[20020703] Initial release. Now has an English README ;) [20020311] The project just started. Largely written in the train from Chemnitz to Berlin. Requires libowfat and works best on Linux with the diet libc.

CVS access

  $ cvs -d cvs -d :pserver:cvs@cvs.fefe.de:/cvs login
  (Logging in to cvs@cvs.fefe.de)
  CVS password: [just hit return]
  $ cvs -d cvs -d :pserver:cvs@cvs.fefe.de:/cvs -z9 co avcache
  [...]

What is it

Short answer: speed up content scanners.

Long answer: when your MTA current pipes email through /bin/content-scanner -x fnord, change that to avcache /bin/content-scanner -x fnord. avcache will then keep a cache of emails that were already scanned and found uninfected. Before piping stdin through content-scanner, it will look for an email with the same body and header (minus Received and Delivered-To lines) in the cache, and if it finds it, it will inject the email without running the content scanner. Otherwise, it will run the content scanner and put the email in the uninfected cache if the content scanner returned a zero exit status. It assumes the content scanner already delivered the email if it was OK.

The email delivery can either hand over the email in qmail-inject or initiate a very simple SMTP session. avcache assumes QMAIL style environment variables. #define POSTFIX to use the Postfix style environment variables (caution: untested). Set $NEXTIP to the IP of the SMTP server you want clean emails to be delivered to (normally 127.0.0.1) and $NEXTPORT to the port.

See also