Browse Source

bogofilter: install postfix-bogofilter script

Signed-off-by: W. Michael Petullo <mike@flyn.org>
W. Michael Petullo 10 years ago
parent
commit
a31e4b7b7f
2 changed files with 35 additions and 0 deletions
  1. 1
    0
      mail/bogofilter/Makefile
  2. 34
    0
      mail/bogofilter/files/postfix-bogofilter

+ 1
- 0
mail/bogofilter/Makefile View File

@@ -41,6 +41,7 @@ define Package/bogofilter/install
41 41
 	$(INSTALL_DIR)  $(1)/etc/ \
42 42
                         $(1)/usr/bin
43 43
 	$(INSTALL_CONF) $(PKG_BUILD_DIR)/bogofilter.cf.example $(1)/etc/bogofilter.cf
44
+	$(INSTALL_BIN) ./files/postfix-bogofilter $(1)/usr/sbin/postfix-bogofilter
44 45
 	$(CP) $(PKG_INSTALL_DIR)/usr/bin/bf_compact $(1)/usr/bin/
45 46
 	$(CP) $(PKG_INSTALL_DIR)/usr/bin/bf_copy $(1)/usr/bin/
46 47
 	$(CP) $(PKG_INSTALL_DIR)/usr/bin/bf_tar $(1)/usr/bin/

+ 34
- 0
mail/bogofilter/files/postfix-bogofilter View File

@@ -0,0 +1,34 @@
1
+#!/bin/sh
2
+
3
+FILTER=/usr/bin/bogofilter
4
+FILTER_DIR=/mnt/sda1/var/spool/bogofilter
5
+# WARNING! The -i is crucial, else you may see
6
+# messages truncated at the first period that is alone on a line
7
+# (which can happen with several kinds of messages, particularly
8
+# quoted-printable)
9
+# -G is ignored before Postfix 2.3 and tells it that the message
10
+# does not originate on the local system (Gateway submission),
11
+# so Postfix avoids some of the local expansions that can leave
12
+# misleading traces in headers, such as local address
13
+# canonicalizations.
14
+POSTFIX="/usr/sbin/sendmail -G -i"
15
+export BOGOFILTER_DIR=/var/lib/bogofilter
16
+
17
+# Exit codes from <sysexits.h>
18
+EX_TEMPFAIL=75
19
+EX_UNAVAILABLE=69
20
+
21
+cd $FILTER_DIR || \
22
+    { echo $FILTER_DIR does not exist; exit $EX_TEMPFAIL; }
23
+
24
+# Clean up when done or when aborting.
25
+trap "rm -f msg.$$ ; exit $EX_TEMPFAIL" 0 1 2 3 15
26
+
27
+# bogofilter -e returns: 0 for OK, nonzero for error
28
+rm -f msg.$$ || exit $EX_TEMPFAIL
29
+$FILTER -p -e > msg.$$ || exit $EX_TEMPFAIL
30
+
31
+exec <msg.$$ || exit $EX_TEMPFAIL
32
+rm -f msg.$$ # safe, we hold the file descriptor
33
+exec $POSTFIX "$@"
34
+exit $EX_TEMPFAIL