diff options
author | W. Michael Petullo <mike@flyn.org> | 2014-10-19 22:25:31 -0400 |
---|---|---|
committer | W. Michael Petullo <mike@flyn.org> | 2014-10-19 22:25:31 -0400 |
commit | a31e4b7b7f6e46cc80ea579992c73f84674fd43b (patch) | |
tree | 471e5b69e7eea19002008489d11ed32db6e3340f /mail/bogofilter | |
parent | 1f22b19d04042771102acec84a99e93496c018f1 (diff) |
bogofilter: install postfix-bogofilter script
Signed-off-by: W. Michael Petullo <mike@flyn.org>
Diffstat (limited to 'mail/bogofilter')
-rw-r--r-- | mail/bogofilter/Makefile | 1 | ||||
-rwxr-xr-x | mail/bogofilter/files/postfix-bogofilter | 34 |
2 files changed, 35 insertions, 0 deletions
diff --git a/mail/bogofilter/Makefile b/mail/bogofilter/Makefile index 076e3dcc9..98c266ebe 100644 --- a/mail/bogofilter/Makefile +++ b/mail/bogofilter/Makefile @@ -41,6 +41,7 @@ define Package/bogofilter/install $(INSTALL_DIR) $(1)/etc/ \ $(1)/usr/bin $(INSTALL_CONF) $(PKG_BUILD_DIR)/bogofilter.cf.example $(1)/etc/bogofilter.cf + $(INSTALL_BIN) ./files/postfix-bogofilter $(1)/usr/sbin/postfix-bogofilter $(CP) $(PKG_INSTALL_DIR)/usr/bin/bf_compact $(1)/usr/bin/ $(CP) $(PKG_INSTALL_DIR)/usr/bin/bf_copy $(1)/usr/bin/ $(CP) $(PKG_INSTALL_DIR)/usr/bin/bf_tar $(1)/usr/bin/ diff --git a/mail/bogofilter/files/postfix-bogofilter b/mail/bogofilter/files/postfix-bogofilter new file mode 100755 index 000000000..7243b71e9 --- /dev/null +++ b/mail/bogofilter/files/postfix-bogofilter @@ -0,0 +1,34 @@ +#!/bin/sh + +FILTER=/usr/bin/bogofilter +FILTER_DIR=/mnt/sda1/var/spool/bogofilter +# WARNING! The -i is crucial, else you may see +# messages truncated at the first period that is alone on a line +# (which can happen with several kinds of messages, particularly +# quoted-printable) +# -G is ignored before Postfix 2.3 and tells it that the message +# does not originate on the local system (Gateway submission), +# so Postfix avoids some of the local expansions that can leave +# misleading traces in headers, such as local address +# canonicalizations. +POSTFIX="/usr/sbin/sendmail -G -i" +export BOGOFILTER_DIR=/var/lib/bogofilter + +# Exit codes from <sysexits.h> +EX_TEMPFAIL=75 +EX_UNAVAILABLE=69 + +cd $FILTER_DIR || \ + { echo $FILTER_DIR does not exist; exit $EX_TEMPFAIL; } + +# Clean up when done or when aborting. +trap "rm -f msg.$$ ; exit $EX_TEMPFAIL" 0 1 2 3 15 + +# bogofilter -e returns: 0 for OK, nonzero for error +rm -f msg.$$ || exit $EX_TEMPFAIL +$FILTER -p -e > msg.$$ || exit $EX_TEMPFAIL + +exec <msg.$$ || exit $EX_TEMPFAIL +rm -f msg.$$ # safe, we hold the file descriptor +exec $POSTFIX "$@" +exit $EX_TEMPFAIL |