Vote on the logo

Plug-In for Procmail

Introducing ver. 2!


Virus Snaggers (“vsnag”) offers a unique, directed solution to special needs in personal or systemwide email management on a *nix platform. A text-based, modular script plug-in for the widely used procmail mail delivery agent (mda), vsnag brings the power of regular expressions to focus in combatting common viruses and worms or suspect email file attachments generally. User licenses are granted free of royalty (but please see specific limitations in the license agreement; the code itself is not public domain!).


Easily configured;“small-footprint” friendly

Written with the twin goals of maximum user flexibility and "turn-key" plug-in simplicity, vsnag is coded "small" to be friendly to your host machine's processor table and memory. In normal operation vsnag invokes native procmail instructions only, with no outside calls or shell forks. Wherever it can, vsnag limits its scouring algorithms to the message headers and declines to shove entire message bodies “down the pipe.” Virus Snaggers brings the user an organized, efficient approach to banishing pernicious attachments or worm-payload-laden mail messages from the inbox. Retake control of your email — plug it in and go!


What's New



Version 2 has been completely recoded!

We've gone painstakingly through every line of code from the previous version and made it better than ever. Efficiency, accuracy, and improved flexibility were our watchwords. We think you'll agree that Virus Snaggers, ver. 2, is the best idea around for augmenting the safety and usability of your *nix-based email server or host.

Virus Snaggers is now packaged in modular form. There are three code files and one documentation file. The files can be placed where you choose. The three programmatic files comprise the main module and two environmental modules. For best results, edit the "myvars" file according to the documentation. Then point your existing .procmailrc file at vsnag, and go! See the documentation and FAQs for more details.


List of Changes:

The following are only highlights. See the documentation file for more comprehensive discussion of the new package and its changes.

  • Improved flexibility with all-recoded algorithms
  • Simplified customization: set all options in one file
  • Stepped ZIP scouring according to your preferences
  • Custom logging or other post-processing via optional hook rc-file
  • Extension blocking easier to customize
  • Documentation expanded and FAQ added
  • Free mailing list for community support & discussion
  • Virus signatures are gone, replaced with “Smart Classification”
  • Testing for encoded filenames with ver. 2.22+
  • Enhanced diagnostic toolset helpful to all procmailers




Use Your Head!


News Flash!

  • 5-Jan-2005: Version 2.23 released. There are a number of enhancements; check “What's New.”
  • Vsnag package includes a custom-coded point-n-shoot shell script for testing and diagnostics.


Read the license agreement

Click on the Legal link and look it over to your satisfaction, please. Downloading Virus Snaggers presumes your agreement with what's here.

Download the package

Click on the Download link and select either the gzipped tarball or the zip-format version. (The contents are identical.) Uncompress the four files on your *nix system wherever you'd like them to be.

Edit myvars as needed

Your editing should be limited to one file! Use a *nix-compatible editor to customize the myvars file if you wish. (If you've placed vsnag's modular code files in separate locations, you'll need to say so inside myvars.) In any case, review what's in that file: it lists all variables that vsnag assigns or uses. Help may be found in the vsnag documentation file.

Call Virus Snaggers from your .procmailrc

You will edit your existing .procmailrc file to call vsnag. Use a line such as the following:

INCLUDERC = /your/path/to/vsnag.rc

Be sure to check for proper operation and mail delivery before walking away from your system!

Note to system administrators

If you're calling vsnag from a systemwide /etc/procmailrc, we recommend that you use a DROPPRIVS statement prior to the call to vsnag. Alternatively, put DROPPRIVS=yes, along with whatever logging or other options you wish, in a separate hook file that vsnag can now run. See documentation for details.