Skip to main content

collective.clamav

https://github.com/collective/collective.clamav/workflows/collective.clamav%20CI/badge.svg https://coveralls.io/repos/github/collective/collective.clamav/badge.svg?branch=master

A product providing clamav antivirus integration for Plone sites with AT and Dexterity content types. It does that by defining a validator which could be used with any content type that uses File, Image or Named field(s). The open-source Clam Antivirus is supported which is available for all platforms.

Usage

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

  • Install collective.clamav 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

If you want to add anti-virus protection to your custom AT content types add the isVirusFree validator to your FileField(s). For instance:

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

If you create custom Dexterity content types add only the necessary import statement to the module and all plone.namedfile fields were automatically scaned:

from Products.validation import V_REQUIRED)

Installation

Install collective.clamav by adding it to your buildout:

[buildout]

...

eggs =
    collective.clamav

and then running bin/buildout

Contribute

Credits

Some code was shamelessly borrowed from pyClamd and collective.ATClamAV:

Support

If you are having issues, please let us know.

License

The project is licensed under the GPLv2.

Contributors

Changelog

3.0.0 (2021-01-25)

  • Remove the AT schema extension and make it work within Plone 5.2 and Python 3. [Andreas Mantke]

  • Increase the release number to 3 because it breaks compatibility to old Archetypes content types. [Andreas Mantke]

  • Added a test for value NOT_CHANGED to the validator module because of a change in converter.py of plone.formwidget.namedfile [Andreas Mantke]

  • isort and flake8 fixes in validator module [Andreas Mantke]

  • Fix tests for Plone 5.2, discontinue Travis and switch to Github Actions [tschorr]

2.0a2 (2016-09-12)

  • Fix ReST/pypi page syntax. [timo]

2.0a1 (2016-09-12)

  • Initial release based on collective.ATClamAV with a new controlpanel module and and a configuration configlet for Plone 5 compatibility. The product and release works with Dexterity content types. [andreasma]

  • Complete Plone 5 compatibility and transferring and adapting tests from collective.ATClamAV. [sneridagh]

Release files for collective.clamav 3.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for collective.clamav 3.0.0
File Size Uploaded
collective.clamav-3.0.0.tar.gz 24.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for collective.clamav 3.0.0
File Interpreter ABI Platform
collective.clamav-3.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 46.1 kB

Release files / collective.clamav-3.0.0.tar.gz

Download URL collective.clamav-3.0.0.tar.gz
Size 24.8 kB
Tags Source
SHA-256 checksum
How to use checksums
4f538a616ee389b21ce1896fc2f0a4676b31754fc2dda909c9a37960b9e576e0
BLAKE2b-256 checksum
How to use checksums
56dd45da6679f3e2697168d745222e10b226280bceb3467daca9a8563a6044db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.6.1 requests/2.25.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9

Release files / collective.clamav-3.0.0-py3-none-any.whl

Download URL collective.clamav-3.0.0-py3-none-any.whl
Size 21.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
01cffe0a0fadd2aa4a54f5096cc66368143ab30fd356974fcdf014d6fc3c329e
BLAKE2b-256 checksum
How to use checksums
00311b2c7fde6e62b00f84d85c9ca375f65330fb9331e88f7ca2b92d7aa045e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.6.1 requests/2.25.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9

Release history Release notifications | RSS feed

This release

3.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page