X-Git-Url: https://git.madduck.net/etc/mailfilter.git/blobdiff_plain/23f3aaa4478aab4cc239c756274a54727ccaf6e0..05736b89182e3eeed0fae64d320484831f9a57fd:/procmail/defines

diff --git a/procmail/defines b/procmail/defines
index a7acfab..bdc3167 100644
--- a/procmail/defines
+++ b/procmail/defines
@@ -23,7 +23,9 @@ LC_CTYPE=de_CH.UTF-8
 
 PROCMAIL="$NICE /usr/bin/procmail -p $PMDIR/procmailrc"
 FORMAIL="$NICE /usr/bin/formail -f"
+GREP="$NICE /bin/grep"
 EGREP="$NICE /bin/egrep"
+FGREP="$NICE /bin/fgrep"
 SED="$NICE /bin/sed"
 BIN_DATE="/bin/date"
 DELIVER="$NICE /usr/lib/dovecot/deliver"
@@ -48,7 +50,7 @@ SPAMCHECK_MAX_MESSAGE_SIZE=512000
 
 # if crm114 is unsure and SA returns a score less-than-or-equal to this,
 # autotrain crm114 with ham
-CRM_UNSURE_SA_AUTOTRAIN_LIMIT_HAM=2.0
+CRM_UNSURE_SA_AUTOTRAIN_LIMIT_HAM=0.0
 # if crm114 classifies a message as spam but SA returns a score
 # less-than-or-equal to this, retrain crm114
 CRM_MISCLASSIFY_SA_AUTOTRAIN_LIMIT_HAM=-1.0
@@ -75,13 +77,14 @@ DEJAVU_HEADER=X-Deja-Vu
 
 NULL=/dev/null
 DELAYED_QUEUE=$BASE/.delayed/
-TICKLER_QUEUE=$BASE/.tickler/
+TICKLER_QUEUE=$BASE/.store/
 DISCARD=$BASE/.discard/
 SPAM=$BASE/.spam/
 #DISCARD="'|$DELIVER -m BASE.discard'"
 
 DELAY_NEXT_WEEKEND='next sunday 28 hours ago' # fri night, 20:00
 DELAY_TONIGHT='tomorrow 00:00 4 hours ago' # tonight at 20:00
+DELAY_AFTERNOON='tomorrow 00:00 8 hours ago' # today at 16:00
 
 OURDATE="`$BIN_DATE +'%s %Y.%m.%d.%H.%M.%N %a, %d %b %Y %T %z'`"
 :0
@@ -133,41 +136,31 @@ INCLUDERC=$PMDIR/get-msgid
 {
   SUBJECT=$MATCH
 
-#TODO
-#  :0
-#  * SUBJECT ?? ()\?=\?(iso-8859-1|utf-8)\?\/..[^\?]*
-#  {
-#    :0
-#    * MATCH ?? B\?\/[^\?]*
-#    { BBB=`echo $SUBJECT | mimencode -u | cat -v` }
-#
-#    :0
-#    * MATCH ?? Q\?\/[^\?]*
-#    { QQQ=`echo $SUBJECT | mimencode -u -q | cat -v` }
-#
-#    SUBJECT="$QQQ$BBB"
-#  }
-
-SUBJECT="$MATCH"
+  # mimedecode.c: * Disclaimer: We only handle charset of iso-8859-1
+  :0
+  * SUBJECT ?? =\?iso-8859-1\?[QBqb]\?.+\?=
+  {
+    DECODED="`echo Subject: $SUBJECT | mimedecode | iconv -f latin1 -t utf-8`"
+    :0
+    *$ DECODED ?? ^Subject:$RE_EXTRACT_HEADER_VALUE
+    { SUBJECT=$MATCH }
+  }
 }
 
 :0
 *$ ^X-Original-To:$RE_EXTRACT_HEADER_VALUE
 { ORIGINAL_TO="$MATCH" }
 :0 E
-{ LOG="NO ORIGINAL_TO: $MSGID" }
+* ^Received:
+{ LOGLATER="NO ORIGINAL_TO: $MSGID" }
 
 :0
 *$ ^X-Trained-As:$RE_EXTRACT_HEADER_VALUE
 { TRAINED_AS="$MATCH" }
 
 :0
-*$ ^X-Tickle-Delivered:$RE_EXTRACT_HEADER_VALUE
-{ TICKLE_DELIVERED="$MATCH" }
-
-:0
-*$ ^X-Delayed:$RE_EXTRACT_HEADER_VALUE
-{ DELAYED="$MATCH" }
+*$ ^X-Postponed:$RE_EXTRACT_HEADER_VALUE
+{ POSTPONED="$MATCH" }
 
 # fix variable values for special cases
 INCLUDERC=$PMDIR/normalise
@@ -229,3 +222,24 @@ RETRAIN
 # JUSTME
 # if set, contains reason why justme message was passed
 JUSTME
+
+# DISABLE_DELAYS
+# if set, disables delaying messages
+DISABLE_DELAYS
+
+# DELAY
+# argument to /bin/date -d to indicate a message delay. This is overridden by
+# RELEASE
+DELAY
+
+# RELEASE
+# /bin/date time expression indicating the time at which a message is to be
+# released. Overrides DELAY.
+RELEASE
+
+# MARK_READ
+# when set, causes mails to be marked as read when delivered. Can be
+# initialised with DELIVER_READ
+MARK_READ=$DELIVER_READ
+
+# vim:ft=procmail