Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A product providing ClamAV antivirus integration for AT-based content types
branch: master

Merge pull request #4 from graingert/master

depend on the existing clamd PyPi package Fixes #1
latest commit 803d12c9e3
Yiorgis Gozadinos ggozad authored
Failed to load latest commit information.
cfgs Update to Plone 4.0.2
docs Rename history to changes
src/collective depend on clamd to simplify
.gitignore Ignores
CHANGES.txt vb
README.txt Prepare release Initial commit
buildout.cfg Initial commit depend on clamd to simplify




``collective.ATClamAV`` aims at providing antivirus integration to Plone
sites. It does that by defining a validator that can be used with any content
type that uses File or Image field(s). The open-source `Clam Antivirus`_  is
supported which is available for all platforms.


To start, you need to have ``clamd`` running on some host accessible by your
instances. ``collective.ATClamAV`` supports either UNIX socket connections or
remote connections.

Install collective.ATClamAV and setup the host & port or the path to the
``clamd`` socket in the control panel (default is a network connection to
``clamd`` listening on *localhost* at port 3310). By default *Files* and
*Images* are going to be checked for viruses when added or updated.

Adding anti-virus protection to non-ATFile based content
In order to add anti-virus protection to your custom content types you only
need to add the *isVirusFree* validator to your FileField(s). For instance:


        validators = (('isNonEmptyFile', V_REQUIRED),
                      ('isVirusFree', V_REQUIRED),),
        widget = FileWidget(label=u'File'),

By default tests mock ``clamd`` and do not require it being installed. If you
want to test your ``clamd`` setup as well, run tests on all levels i.e.


  ./bin/test -a2

using the provided buildout. Two ```` layers (with the mocker
and without) are provided if you want to integrate the package in your own
tests, see ````.

If you want to get involved with the development of collective.ATClamAV please
use `github`_ to submit your patches/issues.

Some code was shamelessly borrowed from `pyClamd`_.

.. _Clam Antivirus:
.. _github:
.. _pyClamd:
Something went wrong with that request. Please try again.