Skip to main content

Provides ClamAV antivirus integration for Archetypes based content types

Project description



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.


1.2 - 2011-03-15

  • Sent all data over the socket instead of only the first buffer. [hannosch]

  • Added error logging for failed scans. [hannosch]

1.1 - 2011-02-15

  • Disable virus validator during debug mode but log a warning. This allows local development to take place without having clamav installed. [hannosch]

1.0 - 2011-01-11

  • Reengineering to support images. [hannosch]

  • Improve coverage and use [ggozad]

  • Plone 4 compatibility. [ggozad, hannosch]

  • pep-8 [ggozad]


  • Added support for local UNIX sockets [ggozad]


  • Initial release [ggozad]

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution (34.2 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page