From e9f4d85fe8ae378685fb116b5d6013bee7a35f1b Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Fri, 21 Oct 2011 20:40:47 +0200 Subject: [PATCH] Added an example filter --- debian/changelog | 6 ++++++ debian/rules | 2 +- example-filter | 26 ++++++++++++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100755 example-filter diff --git a/debian/changelog b/debian/changelog index 5b56a6d..8277882 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +mailman-filter (0.2) unstable; urgency=low + + * Added an example filter. + + -- Martin Mares Fri, 21 Oct 2011 20:40:30 +0200 + mailman-filter (0.1) unstable; urgency=low * Initial release. diff --git a/debian/rules b/debian/rules index 4f62b99..582a39e 100755 --- a/debian/rules +++ b/debian/rules @@ -29,7 +29,7 @@ binary-indep: build install -m 644 Filter.py debian/mailman-filter/usr/lib/mailman/Mailman/Handlers/ dh_installchangelogs - dh_installdocs README + dh_installdocs README example-filter dh_compress dh_fixperms dh_installdeb diff --git a/example-filter b/example-filter new file mode 100755 index 0000000..a3dde52 --- /dev/null +++ b/example-filter @@ -0,0 +1,26 @@ +#!/bin/sh +# Filter called by the Filter module on all incoming messages +# See /usr/share/doc/mailman-filter/README + +t=`mktemp /tmp/mailman-filter_XXXXXXXX` + +judge() +{ + CODE=$1 + TOMOD="$2" + TOSENDER="$3" + if [ -z "$TOSENDER" ] ; then + TOSENDER="$TOMOD" + fi + echo -e "$TOMOD\n=====\n$TOSENDER\n=====" + rm -f $t + exit $CODE +} + +if ! spamc --headers >$t ; then + judge 1 "Spam filter failed" "Message has been held for moderation because of spam filter failure." +fi + +grep -q '^X-Spam-Level: \*\*\*\*\*\*' $t && judge 2 "Spam filter declared this message spam." +grep -q '^X-Spam-Level: \*\*' $t && judge 1 "Spam filter declared this message possible spam." +judge 0 "" -- 2.39.2