Bug#401491: Enable multiple local_scan libraries to be used
Magnus Holmgren
holmgren at lysator.liu.se
Mon Dec 4 03:31:48 CET 2006
Source: exim4
Severity: wishlist
The localscan_dlopen patch makes it possible to provide various scanning
packages that can be easily installed without having to recompile Exim. The
benefit of this is diminished by the fact that there can only be one
local_scan library in use at a time. At the moment, there is only one package
of this kind in Debian, but someone could want to write a function of their
own in addition.
The way local_scan functions are called should make it not too hard to call
more than one of them. First, treat local_scan_path as a list. Then just
dlopen each library in turn and pass the file descriptor (with the correct
offset, of course).
The question is just what to do with the return value and error message,
especially if one filter returns LOCAL_SCAN_TEMPREJECT. I suggest as follows:
If all filters return LOCAL_SCAN_ACCEPT, LOCAL_SCAN_ACCEPT_QUEUE, or
LOCAL_SCAN_ACCEPT_FREEZE, the result is the most restrictive one.
If one filter returns LOCAL_SCAN_REJECT or LOCAL_SCAN_REJECT_NOLOGHDR, the
following filters are not run and the result is what the filter returned with
the error message given by it.
If one filter returns LOCAL_SCAN_TEMPREJECT, then there is the option of
letting the following filters run, or return immediately. If the following
filters run, and another filter returns LOCAL_SCAN_REJECT[_NOLOGHDR], then
that result is used, otherwise the result is the one from the first
termprejecting filter.
If any filter fails to load, the result is as if that filter returned
LOCAL_SCAN_TEMPREJECT (isn't LOCAL_SCAN_TEMPREJECT_NOLOGHDR better?), or
possibly an immediate LOCAL_SCAN_TEMPREJECT.
--
Magnus Holmgren holmgren at lysator.liu.se
(No Cc of list mail needed, thanks)
"Exim is better at being younger, whereas sendmail is better for
Scrabble (50 point bonus for clearing your rack)" -- Dave Evans
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-exim4-maintainers/attachments/20061204/bdb77745/attachment.pgp
More information about the Pkg-exim4-maintainers
mailing list