This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
--
hi
find attached a proof of concept for a generic exim filter daemon (efd).
this was coded over a period of a couple of weeks (between other work) and
is not complete (e.g. autoconf support).
efd pre-fork a user defined number of child processes. each child will
pre-thread the minimum number of threads. the threads will grow to the
maximum, depending on load. child process will be restarted if/when it
crashes.
"filters" are loaded at runtime. these filters are c++ shared libraries
dynamic loaded. included in the archive are 4 filters.:
setup - receives complete mail msg frome exim, store it in a temp file,
unpacks it
oav - ask openantivirus to scan the unpacked msg
sa - scan all or part of the msg for spam
cleanup - cleanup all temp files
a local_scan.c is provided as well as a patch to add efd global config
options to exim.
a notification will be send to each recpt if a msg is rejected
(configureable).
the exim config options are as follows:
efd_portno - port number efd listens on
efd_hostname - hostname
efd_ret_on_error - return value if an error occurs (i.e. RET_ACCEPT,
RET_REJECT, RET_TMPREJECT)
efd_send_report_rcpt - send notification to recpt in msg rejection;
efd_rcpt_report - body of above notification (must contain one %s for filter
defined error message);
efd_rcpt_report_subject - subject of above notification
please provide feedback/critic/etc. i know that documentation is
non-existant. please ask if you need any help. reading the included readme
file is advised!
regards
roelof.
--
[ efd.2002.07.22.tgz of type application/octet-stream deleted ]
--