X-Git-Url: https://git.madduck.net/etc/mailfilter.git/blobdiff_plain/5af333ca3b83425e5cb3aa704b37654d576856c1..c59acab8a4a0212eaf427f8d5e9745eabcf0b303:/procmail/justme

diff --git a/procmail/justme b/procmail/justme
index af7db20..b6257b5 100644
--- a/procmail/justme
+++ b/procmail/justme
@@ -2,68 +2,94 @@
 * ? echo "$ORIGINAL_TO" | $EGREP -qif $CONF/justme-addresses
 {
   :0 H
-  *$ MSGID ?? <.+@$RE_MYDOMAIN>
+  *$ MSGID ?? ^<.+@$RE_MYDOMAIN>
   {
-    LOG="justme:      passing; from machine in my domain$NL"
-    :0 fw
-    |$FORMAIL -I'X-Justme: from machine in my domain'
+    JUSTME="from machine in my domain"
+    LOG="justme:      passing; $JUSTME$NL"
     SKIP_SPAMCHECKS=from-mydomain
   }
 
   :0 EH
   *$ ^(References|In-Reply-To):.*<.+@$RE_MYDOMAIN>
   {
-    LOG="justme:      passing; in-reply-to/referenced$NL"
-    :0 fw
-    |$FORMAIL -I'X-Justme: in-reply-to/referenced'
+    JUSTME="in-reply-to/referenced"
+    LOG="justme:      passing; $JUSTME$NL"
     SKIP_SPAMCHECKS=in-reply-to/referenced
   }
 
   :0 E
   * ? echo "$ORIGINAL_TO" | $EGREP -qif $CONF/justme-address-exceptions
-  { 
-    LOG="justme:      passing; explicitly excepted address$NL"
-    :0 fw
-    |$FORMAIL -I'X-Justme: in-reply-to/referenced'
+  {
+    JUSTME="explicitly excepted address"
+    LOG="justme:      passing; $JUSTME$NL"
   }
 
-  :0 EBH
+  :0 E
   *$ 1^0 B ?? $RE_FIRSTNAME$RE_SPACE_NEWLINE+$RE_LASTNAME
   *$ 1^0 B ?? $RE_LASTNAME[,]?$RE_SPACE_NEWLINE*$RE_FIRSTNAME
   {
-    LOG="justme:      passing; full name reference$NL"
-    :0 fw
-    |$FORMAIL -I'X-Justme: full name reference'
+    JUSTME="full name reference"
+    LOG="justme:      passing; $JUSTME$NL"
   }
 
-  :0 EBH
+  :0 E
   *$ B ?? $RE_LASTNAME
   {
-    LOG="justme:      passing; last name reference$NL"
-    :0 fw
-    |$FORMAIL -I'X-Justme: last name reference'
+    JUSTME="last name reference"
+    LOG="justme:      passing; $JUSTME$NL"
   }
 
-  :0 EBH
+  :0 E
   *  1^0 B ?? madduck
   * -1^0 B ?? mass\.madduck\.net
   {
-    LOG="justme:      passing; nickname reference$NL"
-    :0 fw
-    |$FORMAIL -I'X-Justme: nickname reference'
+    JUSTME="nickname reference"
+    LOG="justme:      passing; $JUSTME$NL"
   }
 
   :0 EBH
   *$ ? $EGREP -qif $CONF/justme-keyword-exceptions
   {
-    LOG="justme:      passing; keyword reference$NL"
-    :0 fw
-    |$FORMAIL -I'X-Justme: keyword reference'
+    JUSTME="keyword reference"
+    LOG="justme:      passing; $JUSTME$NL"
+  }
+
+  :0 E
+  * MSGID ?? ^<mailman
+  * ORIGINAL_TO ?? ^[^=]+=[^@]+@mass\.madduck\.net$
+  {
+    :0
+    * FROM ?? -request@
+    * SUBJECT ?? ^confirm [0-9a-f]+$
+    {
+      JUSTME="mailman confirmation"
+      LOG="justme:      passing; $JUSTME$NL"
+    }
+
+    :0 E
+    * FROM ?? -bounces@
+    * SUBJECT ?? .+ mailing list reminder$
+    {
+      JUSTME="mailman password reminder"
+      LOG="justme:      passing; $JUSTME$NL"
+    }
+  }
+
+  :0 E
+  * FROM ?? ^[Mm]ajordomo@
+  * ORIGINAL_TO ?? ^[^=]+=[^@]+@mass\.madduck\.net$
+  * SUBJECT ?? ^Confirmation for
+  {
+    JUSTME="majordomo confirmation"
+    LOG="justme:      passing; $JUSTME$NL"
   }
 
   :0 E
-  { 
+  {
     LOG="justme:      discarding$NL"
+
+    INCLUDERC=$PMDIR/addheaders
+
     :0
     $DISCARD
   }