ClamAV, or Clam Anti-Virus, is an open-source virus scanner. Over the past few years it has become probably the most widely used virus scanner for Linux and other *nix machines. The developers are very good about getting updated virus definitions out there- most clamav users run the freshclam program, which checks for new virus definitions every hour, and if it finds any, it downloads and installs them automatically.
This page explains the issues involved with getting clamav to work correctly with qmail-scanner. The qmail-scanner program has been updated since I wrote this web page, and the author of qmail-scanner took my suggestion and added it to version 2.0 of qmail-scanner. If you are using qmail-scanner, you should be using version 2.0 or higher.
This page explains how I used to use RPM files to install and update clamav. I no longer do this, primarily because I figured out how to run it under daemontools, but also because the maintainer of the RPM files I was using appears to no longer provide these RPM files.
This page explain how to run the clamd and freshclam processes under daemontools.