Current version: 0.2.0 (24 Jan 2006) [src]
postprox
is an SMTP proxy which copies an SMTP
conversation between its input and another SMTP server, but spools the DATA
portion to a temporary file and runs a specified program on it before
passing it on to the output server - or outputting an SMTP error code
instead if the content filter says so.
The design aim of postprox
is to do only one
job: proxy SMTP conversations and pass message contents to another program
to determine whether to accept or reject the message. With this in mind,
postprox
is small and has a minimal feature
set; its reduced complexity reduces the risk of bugs and security holes.
This software is distributed under the terms of the Artistic License.
Comments, bug reports, and patches gratefully received - please use the Contact Form.
News
- (1 August 2011)
- generous donation received from JRS Systems - thank you!
- 0.2.0 - 24 January 2006
- added
$OUTFILE
so filtering scripts can modify the email in transit - use
putenv()
instead ofsetenv()
for better portability - capture IP address, HELO, sender/recipient for logging
- added
- 0.1.0 - 11 August 2005
- changed command line syntax
- created testing framework
- fixed line reading after feedback from postfix-users mailing list
- created tests to throw long lines, dots, etc through the proxy
- 0.0.1 - 5 August 2005
- package created
To Do
Things still to do:
- make read/write line buffers independent of network buffers
- deal with disk full condition on spool file
- option for max filter message size, deliver if exceeded
- additional tests
- implement listen mode