elspy: Exim local_scan() with Python

elspy is a layer of glue code that enables you to write Python code to scan email messages at SMTP-time with the Exim MTA (mail transport agent). elspy also includes a small Python library with common mail-scanning tools, including an interface to SpamAssassin and a simple-but-effective virus detector.

Exim is a highly flexible and customizable MTA (mail transport agent) for Unix Internet email servers. One of the new features in Exim 4.0 was the local_scan() API, which allows sites to supply custom code for scanning messages at SMTP time, accepting or rejecting them based on message content. Normally, you have to write the local_scan() function in C.

Python is a high-level, extensible, embeddable, object-oriented programming language. Scanning email is a great example of something that you can do in any decent programming language, but do a lot more easily in Python than in C.

The core of elspy is a C local_scan() function that embeds a Python interpreter in Exim, allowing you to write your own local_scan() function in Python instead of C.


file size release date
elspy-0.1.1.tar.gz 32,070 bytes 22 Oct 2002
elspy-0.1.tar.gz 30,988 bytes 21 Oct 2002


Nothing online yet. See README.txt and doc/API.txt in the source distribution.

Other resources

Author, copyright, license

elspy was written by Greg Ward <gward@python.net>.

Copyright (c) 2002 Gregory P. Ward. All rights reserved.

elspy is covered by the modified BSD license; see README.txt for details.