Skip to main content

django-clamd is a django integration with Clamd (Clamav daemon).

Project description

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.

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

django-clamd-0.4.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

django_clamd-0.4.0-py2.py3-none-any.whl (11.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-clamd-0.4.0.tar.gz.

File metadata

File hashes

Hashes for django-clamd-0.4.0.tar.gz
Algorithm Hash digest
SHA256 47adaf6f8156ee613dde9e0d88adc847aa3df021dabf1a4d1aec34b47de8da11
MD5 0640b96b1d004448b5cb799b99a2677d
BLAKE2b-256 03a7101d9df95a907c3d0954f642dc9d3749a94b20129f6d046b9436ba21c0f4

See more details on using hashes here.

Provenance

File details

Details for the file django_clamd-0.4.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_clamd-0.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5bde6c34b42e69972677fb4a7466b032377940c8727ee6ede41eb3b9807dcce4
MD5 0cd913a4140e1b8fd7c995412508ad8a
BLAKE2b-256 fea6625cea3c54daf90380b0e366a079a56f3224b5e6da62d84a9f66db86a1b2

See more details on using hashes here.

Provenance

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