Browse DevX
Sign up for e-mail newsletters from DevX


Procmail 'Passthrough' Partners for powerful E-mail Filtering : Page 3

Use this technique to easily 'retrofit' existing e-mail servers.




Building the Right Environment to Support AI, Machine Learning and Deep Learning

Does It Matter?
Passthrough is important; every e-mail administrator should know about it. Procmail is in wide use, not just with sendmail, but also as a "delivery agent" for such other popular e-mail routers as Postfix, Exim, and Qmail. Several FAQs on procmail discuss filtering with external processes; see this link for an example.

I frequently come across workers who need more programmability in their filtering, and yet I've never seen "w" passthroughs used or explained. In writing this article, I did discover a PGP key retrieval recipe described by Adam Shostack that has used passthrough since the mid-'90s. Apart from that, the only use I've observed of "w" is in a procmail recipe idiom for certain kinds of transformations applied to messages. I'd welcome information about other instances.

Passthrough's greatest disadvantage is that it limits performance. A straightforward passthrough recipe spawns an extra process for each e-mail item it diagnoses. Heavily loaded e-mail servers can't afford this.

However, passthrough is so simple and reliable to implement, and gives such important benefits, that I use it often. Its flexibility in rationalizing e-mail processing often means that overall system responsiveness improves when I use it. On the one occasion that it turned out to constrain performance, I was able to transform it into a "trickier," but higher-performance, pipeline. Write me at this address with news of how it works for you.

Cameron Laird is a full-time independent developer with his own consultancy, Phaseit, Inc. He has deep experience in data management (including RDBMSs and LDAP), knowledge management, networking protocols, graphical user interface (GUI) development, real-time; Unix, OpenVMS, WinNT, OS/400; C, C++, Tcl, Python, Java, FORTRAN, Perl, Lua, Eiffel, etc. He writes a regular column for UNIX Insider, is a contributing editor for Linux magazine, and has had work published in numerous other books and magazines.
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date