Skip to main content

This project integrates python-clamd with Django for easy scanning files for viruses on upload

Install

From PyPi with pip:

pip install django-clamd

or

easy_install django-clamd

You can also install development version direclty from GitHub:

pip install git+https://github.com/vstoykov/django-clamd.git

Aditioanlly if you want translations to work you need to add it to installed apps.

INSTALLED_APPS = (
    ...
    'django_clamd',
    ...
)

Usage

You can use it in forms:

from django import forms
from django_clamd.validators import validate_file_infection

class UploadForm(forms.Form):
    upload_file = forms.FileField(validators=[validate_file_infection])

Or you can add it as validator directly in your model:

from django.db import models
from django_clamd.validators import validate_file_infection

class FileModel(models.Model):
    document = models.FileField(validators=[validate_file_infection])

You will have automatically scanning of upladed files in Django Admin and also when create ModelForm’s for that model.

Configuration

By default django-clamd tries to be smart and with good defaults. You can still configure how to connect to Clamd. Default values are:

CLAMD_SOCKET = '/var/run/clamav/clamd.ctl'
CLAMD_USE_TCP = False
CLAMD_TCP_SOCKET = 3310
CLAMD_TCP_ADDR = '127.0.0.1'

Note: When you are running on Fedora or CentOS and clamav-scanner package is installed then default value for CLAMD_SOCKET is:

CLAMD_SOCKET = '/var/run/clamd.scan/clamd.sock'

You also can disable virus scanning for development with:

CLAMD_ENABLED = False

Note: This is primary for make it easy to run a project on development without the need of installing Clamd on devlopment machine.

License

django-clamd is released as open-source software under the LGPL license.

Release files for django-clamd 0.3.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 django-clamd 0.3.0
File Size Uploaded
django-clamd-0.3.0.tar.gz 4.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-clamd 0.3.0
File Interpreter ABI Platform
django_clamd-0.3.0-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 14.1 kB

Release files / django-clamd-0.3.0.tar.gz

Download URL django-clamd-0.3.0.tar.gz
Size 4.7 kB
Tags Source
SHA-256 checksum
How to use checksums
7d77051dd298538aeb33d2c36d1fcb262f11a9328eb634427b6f41e3b549b596
BLAKE2b-256 checksum
How to use checksums
09eb2b2d5569a5fccd59bbf162e8b811e796c0d44254870c3b8d0197fe95a7c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / django_clamd-0.3.0-py2.py3-none-any.whl

Download URL django_clamd-0.3.0-py2.py3-none-any.whl
Size 9.4 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
537f4ae7e909b4d65b10d3dbc9b23e826b679201ddcb2d227f0a729ce1d751fb
BLAKE2b-256 checksum
How to use checksums
39e2471df83e13191e45fe3b7b5d53b8a16d28071cfc07a8ca44d8f77bd234a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

1.0.0

2 release files

0.4.0

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

This release

0.3.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