procmail
[Top] [All Lists]

Re: Ignoring Received headers when matching

2001-03-18 23:32:40
Stan wrote,

|       2. I dislike checking the message body unless absolutely
|           necessary, so I'd prefer to do the header checks first.

So do I, but it took two conditions to check the head and only one to check
the body; that's why I disposed of checking the body first for this particu-
lar situation.

Otherwise, one could check the head first and the body next if needed:

  :0 flags
  * 1^1 ^(.*\<)?bulk\>
  * -1^1 ^Received:(.*\<)?bulk\>
  action
  :0EB flags
  * ()\<bulk\>
  action

or to do it without the split into two recipes,

  :0 flags
  * 1^1 ^(.*\<)?bulk\>
  * -1^1 ^Received:(.*\<)?bulk\>
  * 2147483646^0
  * -2147483646^0
  * 1^0 B ?? ()\<bulk\>
  action

The last two conditions have the same effect as a single one:

  * -2147483646^0 ! B ?? ()\<bulk\>

but it would require reading the entire body to be sure "bulk" is not
present, while of the two I used instead, the former involves no reading
at all and the latter can quit at the first occurrence of the word.

|       3. Note, I'm willing to say that all headers starting
|           with "Re" must be "Received:" but you can extend the logic
|           as much as needed:

It's a bad idea to give up after "Re"; you'll run afoul of Reply-To:,
Return-Path:, Return-Receipt-To:, Really-Mr-Wickham:, and the entire family
of Resent- headers.  At the least, go out to "Rec" before assuming it's
"Received."

_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail

<Prev in Thread] Current Thread [Next in Thread>