41 messages in net.sourceforge.lists.courier-usersRe: [courier-users] Filter API
FromSent OnAttachments
Bernd WurstDec 30, 2006 1:08 am 
Sam VarshavchikDec 30, 2006 6:12 am 
Bernd WurstDec 30, 2006 7:36 am 
Sam VarshavchikDec 30, 2006 8:51 am 
Bernd WurstDec 30, 2006 9:08 am 
Sam VarshavchikDec 30, 2006 9:55 am 
Aleksandar LazicDec 30, 2006 10:06 am 
Sam VarshavchikDec 30, 2006 10:24 am 
Aleksandar LazicDec 30, 2006 10:32 am 
Bernd WurstDec 30, 2006 10:34 am 
Arturo 'Buanzo' BusleimanDec 30, 2006 10:37 am 
Arturo 'Buanzo' BusleimanDec 30, 2006 10:38 am 
Bernd WurstDec 30, 2006 10:45 am 
Sam VarshavchikDec 30, 2006 11:02 am 
Aidas KasparasDec 30, 2006 11:10 am 
Aleksandar LazicDec 30, 2006 11:12 am 
Sam VarshavchikDec 30, 2006 1:42 pm 
Aleksandar LazicDec 30, 2006 2:56 pm 
Sam VarshavchikDec 30, 2006 3:56 pm 
Aleksandar LazicDec 30, 2006 5:00 pm 
Gordon MessmerDec 31, 2006 10:00 am 
Lorenzo PeroneJan 7, 2007 12:27 pm 
Julian MehnleJan 7, 2007 12:56 pm 
Sam VarshavchikJan 7, 2007 3:42 pm 
Lorenzo PeroneJan 8, 2007 6:59 am 
Gordon MessmerJan 8, 2007 8:37 am 
Lorenzo PeroneJan 9, 2007 8:33 am 
Gordon MessmerJan 10, 2007 12:34 am 
Julian MehnleJan 13, 2007 10:37 am 
Alessandro VeselyJan 14, 2007 2:46 am 
Milan ObuchJan 14, 2007 5:03 am 
Lloyd ZusmanJan 14, 2007 6:23 am 
Aidas KasparasJan 15, 2007 1:28 am 
Gordon MessmerJan 15, 2007 4:01 pm 
Gordon MessmerJan 15, 2007 4:21 pm 
Julian MehnleJan 15, 2007 4:45 pm 
Sergiy ZhukJan 15, 2007 5:42 pm 
Alessandro VeselyJan 16, 2007 1:36 am 
Gordon MessmerJan 21, 2007 7:14 pm 
Alessandro VeselyJan 22, 2007 7:58 am 
Gordon MessmerJan 22, 2007 10:02 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [courier-users] Filter APIActions...
From:Lloyd Zusman (lj@asfast.com)
Date:Jan 14, 2007 6:23:34 am
List:net.sourceforge.lists.courier-users

Alessandro Vesely <ves@tana.it> writes:

Not only Courier has to discard the old message, but it has to accept a new one. Perhaps, the "resubmit path" can be optimized slightly? Anyway, it will remain a technique suitable for setups where messages are modified in a few cases only.

I'd just like to inject some more food for thought into this discussion.

A year or so ago, I submitted a patch to include Courier's queue ID into the "Received:" header that Courier writes into a message. The purpose of this was to aid in the modification of messages during filtering. The way I envision this working is as follows:

Step 1: A message arrives and is fed through a courierfilter.

Step 2: The filter decides that the message needs to be modified in some way, so it writes some information into a database that describes the modifications to the message, using the queue ID as a key. For example, this database might be some sort of dbm file.

Step 3: The courierfilter then accepts the message, as is.

Step 4: Later in the message delivery chain, this same message is routed through maildrop. At this point, the message can be modified.

Step 5: A maildrop recipe uses this same queue ID to look into the database mentioned above. If it finds modification instructions that are keyed to this queue ID, it alters the message in the way that the instructions stipulate, and then it delivers the message or passes it on for further filtering.

Although this is a multi-step process that requires cooperating courierfilters and maildrop recipes, it doesn't require any changes to Courier's current message-delivery procedure.

The queue ID is the field within the first "Received:" header that looks like "id 080DDC27.45A9E14A.0000755B". It's guaranteed to be unique during all steps along the message delivery chain for any given message.