No Packages Misplaced

    clam-engine

    2.0.1 • Public • Published

    node-clam-engine Build Status

    Clam Engine provides robust native bindings to the clamav library. It allows you to scan files for viruses in-process, without requiring a running instance of clamd, or imposing the startup time of the clamscan command.

    Installation

    Dependencies

    Clam Engine requires libclamav to be present.

    • Ubuntu: apt-get install libclamav-dev clamav-freshclam
    • Homebew (OS X): brew install clamav

    Via NPM

    Just run npm install clam-engine. Clam Engine supports Node.js 0.10, 0.11 and 0.12 as well as io.js. If something doesn't work for you using one of those runtimes, please file a bug.

    Usage

    Updating Signatures

    In order for Clam Engine to work, you need to update the clamav virus signatures by running the freshclam command. You will need to configure it firsy.

    Example

    var clam = require('clam-engine');
    
    clam.createEngine(function (err, engine) {
      if (err) {
        return console.log('Error', err);
      }
      engine.scanFile('eicar.com', function (err, virus) {
        if (err) {
          return console.log('Error', err);
        }
        if (virus) {
          return console.log('Virus', virus);
        }
        console.log('Clean');
      });
    });
    

    API

    • #### clam.createEngine(cb) Creates and initialises a new engine. The callback is called with (err, engine).

    • #### engine.version Property that contains the version of the underlying clamav engine.

    • #### engine.signatures Propery that indicates the number of signatures loaded.

    • #### engine.scanFile(filename, cb) Scans a file for a virus. The callback is called with (err, virus). virus is null if the file is clean.

    Install

    npm i clam-engine

    DownloadsWeekly Downloads

    23

    Version

    2.0.1

    License

    MIT

    Last publish

    Collaborators

    • srijs