On Thu, Aug 11, 2011 at 10:02:21AM +1000, Troy Piggins wrote:
> On Wed, Aug 10, 2011 at 09:47:37AM +0200, Jeroen Geilman wrote:
<snip />
>> It is not a variable expansion. Use this instead:
>> 
>>      /(user1)@mydomain.com/  $1_s...@mydomain.com
>> 
>> Read http://www.postfix.org/pcre_table.5.html, section Text Substitution for
>> details.
>> 
>> Note that this offers zero advantage over an exact match.
> 
> Thankyou!  That works.  I now have this and it seems to be working fine:
> 
> if !/^(excludeduser1|root|.+_sent)@mydomain\.com$/
> /^(.+)@mydomain\.com$/ ${1}_s...@mydomain.com
> endif

Perhaps I spoke too soon.  This is creating duplicates.  Any pointers on why?
I could see a loop problem if the "if/endif" condition wasn't there, but
shouldn't that prevent "_sent" messages going through again?

For completeness, the procmail rule I use is:

:0:
* ^X-Original-To:.*_sent@mydomain\.com
| gzip -fc9 >> ${HOME}/Sent_${DATE}.gz

The duplicates do not show up in the sender's normal Sent folder, but do show
up in the gzipped archive.  Using my "old" method of manually adding/deleting
each user as they join/leave the company, and using a hash table instead of
pcre, this worked and didn't create duplicates:

us...@mydomain.com      user1_s...@mydomain.com
us...@mydomain.com      user2_s...@mydomain.com
us...@mydomain.com      user3_s...@mydomain.com
and so on...

I can't see my error, please help.

Reply via email to